Hallo Abuze,
in Deiner Methode isInTag() hast u in einer Schleife die folgende Zeile:
a) substr = editorField.getText().substring(value+i,value+i+1);
und weiter unten prüfst Du die Abbruchbedingung folgendermaßen ab:
b) if ((value+i) > editorField.getText().length())
Dadurch überschreitest Du in Zeile a) die String-Grenze um ein Zeichen. Deshalb mußt Du in Zeile b)
(value + i) durch (value + i +1) ersetzen, dann funktioniert's.
Im übrigen ist mir aufgefallen, daß Du javax.swing.* für JTextPane nicht importiert hast, das müßte meines Erachtens eigentlich sowieso noch zu einem Compilerfehler führen.
Bei mir war's jedenfalls so ;-)
Gruß
Beate Mielke