Java经典实例:正则表达式,找到匹配的文本
2016-11-09 16:01
567 查看
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); int i = 0; 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()); } } }
输出:
Q[^u]\d+\. matches "QT300." in "Order QT300. Now! QT400." start:6 end:12 Q[^u]\d+\. matches "QT400." in "Order QT300. Now! QT400." start:18 end:24
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)); } } }
输出:
分组0:Adams,John Quincy 分组1:Adams 分组2:John Quincy
相关文章推荐
- Java基于正则表达式实现查找匹配的文本功能【经典实例】
- Java经典实例:正则表达式,替换匹配的文本
- Java经典实例:正则表达式,替换匹配的文本
- Java基于正则表达式实现的替换匹配文本功能【经典实例】
- Java正则表达式匹配使用实例
- java正则表达式来替换文本中匹配正则的内容
- 匹配文本中的网址java正则表达式
- Java经典实例:使用正则表达式:测试模式
- 匹配文本中的网址java正则表达式
- java正则表达式 匹配文本中的网址
- Java经典实例:在正则表达式中控制大小写
- java中常用的匹配正则表达式实例大全
- 匹配文本中的网址java正则表达式
- 【LeetCode-面试算法经典-Java实现】【010-Regular Expresssion Matching(正则表达式匹配)】
- Java经典实例:在文本中匹配换行符
- 常用的匹配正则表达式和实例
- 常用的匹配正则表达式和实例
- 常用的匹配正则表达式和实例
- Java 用正则表达式来实现 通配符匹配 (支持*, ?)
- 常用的匹配正则表达式和实例