FindReplaceDialog.java 文件源码

java
阅读 45 收藏 0 点赞 0 评论 0

项目:pmTrans 作者:
private List<WordIndexerWrapper> findAll(String keyWord, boolean matchCase, boolean wholeWord, boolean regex,
        Point searchBounds) {

    String wholeText = text.getText();
    if (!matchCase) {
        keyWord = keyWord.toLowerCase();
        wholeText = wholeText.toLowerCase();
    }
    if (!regex) {
        String temp = "";
        for (int i = 0; i < keyWord.length(); i++)
            temp += ("[" + keyWord.charAt(i) + "]");
        keyWord = temp;
    }
    if (wholeWord)
        keyWord = "\\b" + keyWord + "\\b";
    System.out.println("looking for: " + keyWord);
    WordIndexer finder = new WordIndexer(wholeText);
    List<WordIndexerWrapper> indexes = new LinkedList<WordIndexerWrapper>();
    try {
        indexes = finder.findIndexesForKeyword(keyWord, searchBounds.x, searchBounds.y);
    } catch (PatternSyntaxException e) {
        MessageBox diag = new MessageBox(Display.getCurrent().getActiveShell(),
                SWT.APPLICATION_MODAL | SWT.ICON_ERROR | SWT.OK);
        diag.setMessage("Regular expression error.\n\n" + e.getMessage());
        diag.open();
    }
    return indexes;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号