用Java匹配模式
如果您使用的是Java,那么您之前很有可能會看到其模式匹配。 String#matches(String)方法在內部使用Pattern類型,該類型包含更復雜的功能:
通過編譯正則表達式來創建Pattern 。 該模式與任何輸入字符串匹配,并且可以選擇查找捕獲組,這些捕獲組隔離了字符串數據的某些部分。
該API的用法如下:
Pattern pattern = Pattern.compile( "([\\^\\S]+) is powerful" ); Matcher matcher = pattern.matcher( "Java is powerful" ); System.out.println(matcher.find()); // true System.out.println(matcher.group()); // Java is powerful System.out.println(matcher.group( 1 )); // Javafind()方法查找模式的下一次出現,該模式與本示例中的整個輸入字符串匹配。 group()方法返回整個捕獲組,即與整個模式匹配,或者在使用索引限定時返回單個捕獲組。 捕獲組索引從1開始,而不是從0 。
還有一個matches()方法,其工作方式略有不同:
Pattern pattern = Pattern.compile( "([\\^\\S]+) is powerful" ); Matcher matcher = pattern.matcher( "Our Java is powerful" ); System.out.println(matcher.matches()); // false System.out.println(matcher.find()); // truematches()嘗試從頭到尾將整個輸入字符串與模式匹配,而find()僅嘗試在輸入字符串中的某個位置查找模式。
另外,提醒一下:請僅將快捷方式String#matches(String)或Pattern#matches(String, CharSequence)用于不重復重復的單個匹配調用。 模式編譯起來很繁瑣,我們應該利用模式類型的不變性,并將其重用于多個匹配項。
帖子的內容已從我的通訊034中重新發布 。
翻譯自: https://www.javacodegeeks.com/2019/12/matching-patterns-with-java.html
總結
- 上一篇: 淮教鞭快捷键(电子教鞭快捷键)
- 下一篇: 电脑完整版刷机软件(电脑完整版刷机软件下