Java基于正则表达式实现查找匹配的文本功能【经典实例】

时间:2021-05-20

本文实例讲述了Java基于正则表达式实现查找匹配的文本功能。分享给大家供大家参考,具体如下:

REMatch.java:

package reMatch;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * Created by Frank */public class REMatch { public static void main(String[] args) { String patt = "Q[^u]\\d+\\."; Pattern r = Pattern.compile(patt); String line = "Order QT300. Now! QT400."; Matcher m = r.matcher(line); while (m.find()) { // group(0)或group()将会返回整个匹配的字符串(完全匹配);group(i)则会返回与分组i匹配的字符 // 这个例子只有一个分组 System.out.println(patt + " matches \"" + m.group(0) + "\" in \"" + line + "\""); System.out.println("start:" + m.start() + " end:" + m.end()); } }}

eclipse运行结果如下图:

REMatchTwoFields.java:

package reMatchTwoFields;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * Created by Frank */public class REMatchTwoFields { public static void main(String[] args) { String inputLine = "Adams,John Quincy"; Pattern r = Pattern.compile("(.*),(.*)"); Matcher m = r.matcher(inputLine); if (!m.matches()) { throw new IllegalArgumentException("Bad Input"); } // 分组0得到的是整个原字符串 for (int i = 0; i < m.groupCount() + 1; i++) { System.out.println("分组" + i + ":" + m.group(i)); } }}

eclipse运行结果如下图:

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

希望本文所述对大家java程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章