Python: slicing elements of lists in lists in lists
===

I've reached the end of my limited knowledge with this problem.  At the moment, I'm parsing diff results.  Here's an example of the results I'm trying to manipulate:

    [
    [[0, 0, '\xe2\x80\x9cWe are returning again statement. He depicted the attacks as part of a battle launched by Sunnis against the country\xe2\x80\x99s Shia leaders.\r\n\r\nThe first attack came about 5 a.m. on Monday when gunmen stormed onto an Iraqi '], 
    [-1, 1, 'military base near the town of Duluiyah in S'], 
    [0, 2, 'alahuddin Province and killed 15 Iraqi soldiers, according to security officials. Four soldiers, including a high-ranking was taken prisoner by the insurgents, who escaped with him.\r\n\r\nThe insurgents also attacked the home of a police official in Balad, seriously wounding ']], 
        
    [[0, 4, 'eckpoint near Baquba, killing one policeman. In all, attacks were reported in at least five provinces.\r\n\r\nEight attacks were launched in Kirkuk Province, mostly targeting police patrols, with five people killed and 42 wounded.\r\n\r\nThe offensive started on the third day of the Islamic holy month of Ramadan, and '],
    [-1, 5, 'apparently took advantage of the wi'], 
    [1, 6, 'll and the other.']]
    ]

I'm building a diff summariser.  Here's how it breaks down:

The list is a list of diff results (two in the example above).

The sublist has three elements:

 - text before the change, 
 - text constituting the change; and 
 - text after the change.

The sub-sub-list has three elements too: 

 - a number to indicate if the section is a deletion, addition or unaffected (-1,0,1 respectively); 
 - a position number (sequential); and
 - the string itself.

What I need to do is to slice the strings in the sub-sub-lists, but it depends what sublist they're in.

 - For element 1 in the sublist, I need to slice away all of the string except the last 4 characters.
 - For element 2 in the sublist, I need for there to be no slice.
 - For element 3 in the sublist, I need to slice away all of the string except the first 4 characters.

Here's an example of why I need to slice this way.  Simplified tText before the solution:

    [[[...]], [[this is a],[sentence],[to demonstrate.]], [[...]]]

Text after the solution:

    [[[...]], [[is a],[sentence],[to d]], [[...]]]

And the other difficulty is, I'd like to preserve the structure of the lists.

It's been a tough day - I'd apologise for the mind bending nature of this problem, but that's what Overflow is for...

Thoughts?