本文实例讲述了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()); /* 输出: 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 */ } } }
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)); /* 输出: 分组0:Adams,John Quincy 分组1:Adams 分组2:John Quincy */ } } }
eclipse运行结果如下图:
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述对大家java程序设计有所帮助。
本文向大家介绍Java基于正则表达式实现的替换匹配文本功能【经典实例】,包括了Java基于正则表达式实现的替换匹配文本功能【经典实例】的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java基于正则表达式实现的替换匹配文本功能。分享给大家供大家参考,具体如下: eclipse运行代码效果图如下: PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用: JavaScript正则表
本文向大家介绍Java正则表达式实现在文本中匹配查找换行符的方法【经典实例】,包括了Java正则表达式实现在文本中匹配查找换行符的方法【经典实例】的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java正则表达式实现在文本中匹配查找换行符的方法。分享给大家供大家参考,具体如下: 默认情况下,正则表达式 ^ 和 $ 忽略行结束符,仅分别与整个输入序列的开头和结尾匹配。如果激活 MULTILI
本文向大家介绍正则表达式实现最小匹配功能的方法,包括了正则表达式实现最小匹配功能的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了正则表达式实现最小匹配功能的方法。分享给大家供大家参考,具体如下: 正则表达式默认情况下实现的是最大化匹配,这在有些情况下是非常不愿意出现的,比如下面这段代码: # starting IndiaInventoryAPP.exe" ~~DisplayVaria
本文向大家介绍PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】,包括了PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP preg_match实现正则表达式匹配功能。分享给大家供大家参考,具体如下: preg_match — 执行一个正则表达式匹配 preg_match ( $patte
我有一个多行文本,我想从这里匹配单词“Description Amount”和以逗号作为分隔符的随机数字之间的文本。 示例输入: 预期产出: 输入示例: 预期产出: 输入包含多个换行符的变量。我使用了以下正则表达式: 但还需要改进。谢谢你。
问题内容: 当字符串以数字开头时,我需要匹配,然后是一个点,然后是一个空格和1个或多个大写字符。匹配必须发生在字符串的开头。我有以下字符串。 我尝试过的正则表达式是: 它不匹配。一个有效的正则表达式将对这个问题有什么作用? 问题答案: (对不起,我先前的错误。大脑现在坚定地投入了。嗯,也许。) 这有效: 分解: =字符串开头 =一个或多个数字 (之所以转义,是因为它在字符串中,因此) =文字(或者