try {
while (nleft > 0) {
document.getText(offset, nleft, segment);
for(char c = segment.first(); c != CharacterIterator.DONE;
c = segment.next()) {
if (!stack.isEmpty()) {
// already found a begin marker, so looking for end marker
if (c == endMarkerChars[endMarkerIndex]) {