Java学习笔记-正则表达式的模式匹配
正則表達式(Regex)為被匹配的文本模式提供了簡明扼要的規范。
關于正則表達式的語法,可以參考相關書籍和這個網址:http://edu.yesky.com/edupxpt/18/2143018.shtml
這里主要介紹Java的正則表達式包的使用:(這里遵循Java的命名規范,開頭字母大寫表示類名,小寫表示變量)
1、基本匹配方法:inputString.matches(stringRegexPattern)
2、使用RE類的簡單例子:
????? RE r=new RE(pattern);? //patttern是正則表達式字符串
????? boolean found=r.match(input);? //input是輸入的字符串
3、Java 的regex包由兩個類組成:Pattern和Matcher
??? 詳細的類和使用方法可以參考Java API
在這里我總結一下今天做項目練習用到的方法,這些應該都是比較常用的.
Pattern:
Pattern.compile(String regex)? 可以產生一個以給定正則表達式編譯出的匹配模式(pattern)
pattern.matcher(String input)? 可以產生一個將給定輸入和pattern匹配的匹配器
Pattern.matches(regex,input)? 將給定輸入與給定正則表達式匹配,匹配則返回true
?????? 注意:這個方法有另一種的寫法
??????????????????????????? Pattern p=Pattern.compile(regex);
??????????????????????????? Matcher m=p.matcher(input);
??????????????????????????? m.matches();
???????????????當正則表達式要多次使用時,實現編譯一次效率比較高
另split()也是一種比較常用的方法,由于我暫時沒有用到,這里就暫時不涉及了
?
Matcher:
一、查找匹配的文本(m是事先產生的matcher)
???? m.start()?? m.end()返回字符串中開始和結束字符的位置信息
???? groupCount()返回用括號括起來的獲取的分組數,如果沒有分組則返回0
???? group(int i)如果i小于等于分組數,則返回對應編號的分組字符串。group()或group(0)返回匹配的整個字符串
?????? 注:正則表達式處理時,圓括號中的內容最先處理。正則表達式可能出現比較復雜的多層嵌套,調用這個方法可以獲得指定嵌套層所匹配的內容,
???????????? 如果沒有使用圓括號,則視為零層。
二、替換匹配的正文
三、打印匹配的所有字符串
四、打印含有模式的行
五、在正則表達式中控制大小寫
六、匹配時的換行問題
上面的暫時沒有用到,等用到了解之后再補充
轉載于:https://www.cnblogs.com/ITEagle/archive/2010/02/06/1664856.html
總結
以上是生活随笔為你收集整理的Java学习笔记-正则表达式的模式匹配的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Delphi IDE扩展工具,在IDE中
- 下一篇: OpenSocial容器 shindig