通过JEditorPane迭代

时间:2012-11-22 01:46:38

标签: java swing document jeditorpane

JEditorPane中,我想搜索一个字符串,我知道scrollToReference不起作用,所以我想知道如何遍历窗格并查找指定的字符串。< / p>

如何通过JEditorPane迭代在java中查找指定的字符串?

2 个答案:

答案 0 :(得分:4)

我能想到的最简单的方法就是浏览文档。

Document document = editor.getDocument();
try {
    String find = //... String to find
    for (int index = 0; index + find.length() < document.getLength(); index++) {
        String match = document.getText(index, find.length());
        if (find.equals(match)) {
            // You found me
        }
    }
} catch (BadLocationException ex) {
    ex.printStackTrace();
}

你可以根据这个概念编写一些例程来“找到下一个单词”

您可能还会发现Highlight a word in JEditorPaneJava - Scroll to specific text inside JTextArea都使用类似的方法来实现不同的目标

答案 1 :(得分:4)

扩展@ Mad的answer,如果您的DocumentHTMLDocument,则可以使用ElementIterator进行探索,如图here所示。