亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? search.java

?? java寫的多功能文件編輯器
?? JAVA
字號:
/* * 06/09/2001 - 12:07:56 * * Search.java - Search methods * Copyright (C) 2000 Slava Pestov * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. */package org.jext.search;import javax.swing.text.Segment;import gnu.regexp.*;import org.jext.*;import org.gjt.sp.jedit.syntax.*;public class Search{  public static SearchMatcher matcher;  public static String replacePattern, findPattern, pythonScript;  public static boolean useRegexp = false, ignoreCase = true, script = false, reverseSearch = false;  public static void load()  {    findPattern = Jext.getProperty("find");    replacePattern = Jext.getProperty("replace");    useRegexp = Jext.getBooleanProperty("useregexp");    ignoreCase = Jext.getBooleanProperty("ignorecase");    script = Jext.getBooleanProperty("replacescript");    pythonScript = Jext.getProperty("pythonscript");  }  public static void save()  {    Jext.setProperty("find", findPattern);    Jext.setProperty("replace", replacePattern);    Jext.setProperty("pythonscript", pythonScript);    Jext.setProperty("ignorecase", ignoreCase ? "on" : "off");    Jext.setProperty("useregexp", useRegexp ? "on" : "off");    Jext.setProperty("replacescript", script ? "on" : "off");  }  public static String getPythonScriptString()  {    return pythonScript;  }  public static void setPythonScriptString(String pythonScript)  {    Search.pythonScript = pythonScript;  }  public static boolean getPythonScript()  {    return script;  }  public static void setPythonScript(boolean script)  {    Search.script = script;  }  public static boolean getRegexp()  {    return useRegexp;  }  public static void setRegexp(boolean useRegexp)  {    Search.useRegexp = useRegexp;  }  public static boolean getIgnoreCase()  {    return ignoreCase;  }  public static void setIgnoreCase(boolean icase)  {    Search.ignoreCase = icase;  }  public static void setFindPattern(String findPattern)  {    Search.findPattern = findPattern;  }  public static String getFindPattern()  {    return findPattern;  }  public static void setReplacePattern(String replacePattern)  {    Search.replacePattern = replacePattern;  }  public static String getReplacePattern()  {    return replacePattern;  }  public static SearchMatcher getSearchMatcher() throws Exception  {    return getSearchMatcher(true);  }  public static SearchMatcher getSearchMatcher(boolean reverseOK) throws Exception  {    //if (matcher != null && (reverseOK || !reverseSearch))    //  return matcher;    if (findPattern == null || "".equals(findPattern))      return null;    // replace must not be null    String replace = (Search.replacePattern == null ? "" : Search.replacePattern);    //String pythonScript = Search.pythonScript;    //if (script && replace.length() != 0)    //{    //Interpreter interp = BeanShell.getInterpreter();    //interp.eval("_replace(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9)\n{\nreturn (" + replace + ");\n}");    //replaceMethod = interp.getNameSpace().getMethod("_replace");    //}    if (useRegexp)      matcher = new RESearchMatcher(findPattern, replace, ignoreCase, script, pythonScript);    else {      matcher = new BoyerMooreSearchMatcher(findPattern, replace, ignoreCase, reverseSearch && reverseOK,                                            script, pythonScript);    }    return matcher;  }  public static boolean find(JextTextArea textArea, final int start) throws Exception  {    SearchMatcher matcher = getSearchMatcher(true);    Segment text = new Segment();    SyntaxDocument buffer = textArea.getDocument();    buffer.getText(start, buffer.getLength() - start, text);    int[] match = matcher.nextMatch(text);    if (match != null)    {      textArea.select(start + match[0], start + match[1]);      return true;    } else      return false;  }  public static boolean replace(JextTextArea textArea)  {    if(!textArea.isEditable())    {      Utilities.beep();      return false;    }    // setSelectedText() clears these values, so save them    int selStart = textArea.getSelectionStart();    boolean rect = textArea.isSelectionRectangular();    if (selStart == textArea.getSelectionEnd())    {      Utilities.beep();      return false;    }    try    {      SearchMatcher matcher = getSearchMatcher(false);      if (matcher == null)      {        Utilities.beep();        return false;      }      String text = textArea.getSelectedText();      String replacement = matcher.substitute(text);      if (replacement == null || replacement.equals(text))        return false;      textArea.setSelectedText(replacement);      //textArea.setSelectionStart(selStart);      //textArea.setSelectionRectangular(rect);      return true;    } catch(Exception e) { }    return false;  }  public static int replaceAll(JextTextArea textArea, int start, int end) throws Exception  {    if (!textArea.isEditable())      return 0;    SyntaxDocument buffer = textArea.getDocument();    SearchMatcher matcher = getSearchMatcher(false);    if (matcher == null)      return 0;    int occurCount = 0;    Segment text = new Segment();    int offset = start;loop: for( ; ; )    {      buffer.getText(offset, end - offset, text);      int[] occur = matcher.nextMatch(text);      if (occur == null)        break loop;      int _start = occur[0] + offset;      int _end = occur[1] - occur[0];      String found = buffer.getText(_start, _end);      String subst = matcher.substitute(found);      end -= (found.length() - subst.length());      if (subst != null)      {        buffer.remove(_start, _end);        buffer.insertString(_start, subst, null);        occurCount++;        offset += occur[0] + found.length();      } else        offset += _end;    }    return occurCount;  }}// End of Search.java

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人综合婷婷国产精品久久| 国产精品国产三级国产aⅴ原创 | 色偷偷成人一区二区三区91| 国产成人av在线影院| 国产激情一区二区三区| 粗大黑人巨茎大战欧美成人| 懂色一区二区三区免费观看| 成人夜色视频网站在线观看| 91香蕉国产在线观看软件| 色婷婷综合久久久中文一区二区| 色综合久久久久久久久| 在线视频一区二区免费| 欧美日韩国产天堂| 精品国产区一区| 国产精品色在线观看| 依依成人精品视频| 免费av成人在线| 丁香婷婷综合色啪| 91久久香蕉国产日韩欧美9色| 欧美性一二三区| 精品久久久久久久久久久久久久久久久| 欧美成人高清电影在线| 中文字幕成人在线观看| 亚洲专区一二三| 精品一区二区三区的国产在线播放| 国产精品伊人色| 色哟哟精品一区| 欧美成人a视频| 亚洲图片欧美激情| 日本在线不卡视频| 成人18视频在线播放| 欧美亚州韩日在线看免费版国语版| 日韩亚洲电影在线| 中文字幕一区二区三区四区| 一区二区免费看| 免费高清在线一区| 91麻豆国产在线观看| 欧美成人精品二区三区99精品| 国产女同互慰高潮91漫画| 亚洲一区二区视频在线| 国产精品中文有码| 欧美精品aⅴ在线视频| 国产丝袜美腿一区二区三区| 亚洲成人激情自拍| 国产成a人亚洲精| 欧美一区二区免费| 亚洲一区二三区| 国产精品亚洲成人| 欧美mv日韩mv| 亚洲大片一区二区三区| 成人手机在线视频| 欧美不卡一区二区三区| 一区二区三区日韩| 国产精品资源站在线| 欧美人与z0zoxxxx视频| 亚洲桃色在线一区| 国产九九视频一区二区三区| 欧美色图免费看| 亚洲欧美一区二区三区国产精品 | 国产午夜精品久久久久久久 | 欧美日本精品一区二区三区| 亚洲特级片在线| 波多野结衣中文字幕一区 | 国产大陆a不卡| 日韩欧美在线网站| 日本午夜精品一区二区三区电影| 91在线国产福利| 亚洲美女免费在线| 91视视频在线观看入口直接观看www | 亚洲丝袜精品丝袜在线| eeuss鲁片一区二区三区| 欧美国产精品中文字幕| 国产精品一线二线三线| 久久色在线视频| 精品一区二区三区久久久| 日韩欧美一区二区三区在线| 日韩国产在线观看一区| 欧美一区二视频| 麻豆成人91精品二区三区| 日韩午夜电影在线观看| 久久99精品国产| 久久美女艺术照精彩视频福利播放| 亚洲国产一区二区a毛片| 91精品国产综合久久香蕉的特点| 亚洲午夜私人影院| 欧美丝袜自拍制服另类| 视频一区视频二区中文字幕| 欧美精品三级在线观看| 狠狠色狠狠色综合日日91app| 精品日韩99亚洲| 高清不卡一区二区在线| 国产精品久久久久久久浪潮网站| caoporen国产精品视频| 中文字幕制服丝袜成人av| 色狠狠一区二区| 日本午夜精品一区二区三区电影 | 91色porny| 亚洲免费观看高清完整版在线观看熊| 91色在线porny| 日日欢夜夜爽一区| 日韩亚洲欧美在线| 懂色中文一区二区在线播放| 国产精品国产三级国产有无不卡| 95精品视频在线| 日日夜夜免费精品| 中文字幕的久久| 欧美日韩精品久久久| 麻豆精品在线视频| 亚洲精品国产品国语在线app| 欧美老肥妇做.爰bbww| 国产精品18久久久久久vr| 成人欧美一区二区三区1314| 这里只有精品免费| 成人视屏免费看| 丝袜美腿亚洲综合| 成人免费在线视频| 日韩一级免费观看| 色噜噜狠狠一区二区三区果冻| 亚欧色一区w666天堂| 国产精品免费aⅴ片在线观看| 精品视频在线视频| 成人av资源网站| 另类调教123区 | 久久亚洲精精品中文字幕早川悠里| a级高清视频欧美日韩| 免费成人深夜小野草| 亚洲日本欧美天堂| 国产无遮挡一区二区三区毛片日本| 欧美亚洲动漫制服丝袜| 91在线视频观看| 国产主播一区二区| 男女激情视频一区| 亚洲一区二区三区视频在线播放 | 欧美丰满美乳xxx高潮www| 99免费精品在线| 国内成人免费视频| 免费三级欧美电影| 亚洲色图清纯唯美| 国产精品欧美一区二区三区| 欧美成人免费网站| 日韩欧美一区中文| 在线不卡中文字幕播放| 欧美在线你懂得| 在线观看亚洲精品| 色悠悠亚洲一区二区| 91伊人久久大香线蕉| 成人在线视频首页| 国产91丝袜在线观看| 久久99精品久久久久久动态图| 亚洲制服丝袜在线| 亚洲综合激情网| 国产精品国产三级国产| 中文字幕精品在线不卡| 中文字幕 久热精品 视频在线 | 日韩一区二区电影| 欧美亚一区二区| 欧美日韩第一区日日骚| 欧美午夜电影网| 欧美日韩精品电影| 欧美在线免费观看视频| 欧美高清视频在线高清观看mv色露露十八| 欧美综合在线视频| 欧美日韩国产一二三| 欧美一级爆毛片| 精品99999| 国产精品理论片在线观看| 亚洲少妇最新在线视频| 亚洲精品写真福利| 日韩电影一区二区三区四区| 免费观看一级欧美片| 国内精品伊人久久久久影院对白| 国产成人亚洲精品狼色在线| 成人小视频在线| 欧美在线一区二区三区| 91精品福利在线一区二区三区 | 国产日韩欧美高清| 日韩毛片在线免费观看| 亚洲v日本v欧美v久久精品| 老司机免费视频一区二区 | 日日嗨av一区二区三区四区| 日本视频一区二区| 波多野结衣一区二区三区| 在线亚洲一区观看| 久久综合久久鬼色中文字| 亚洲欧洲日韩一区二区三区| 午夜电影网亚洲视频| 国产精品一区2区| 欧美日韩国产乱码电影| 久久综合色婷婷| 一区二区三区电影在线播| 激情综合色丁香一区二区| 99re热视频这里只精品| 日韩一区二区精品葵司在线| 中文字幕免费一区| 老色鬼精品视频在线观看播放| 成人av在线资源网站| 欧美电影精品一区二区| 国产精品青草久久| 日韩av一级电影| 日本国产一区二区|