^/.* ^表示行的开头.* 表示任意,就是随便是什么都匹配,没有了也匹配。
测试过,可用。
正则表达式,又称规则表达式,是计算机科学的一个概念,这个概念最初是由Unix中的工具软件普及开的。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。
正则引擎主要分为DFA、NFA两大类。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。
正则表达式的“鼻祖”或许可一直追溯到科学家对人类神经系统工作原理的早期研究。通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。
.*匹配除 \n 以外的任何字符。 /[\u4E00-\u9FA5]/ 汉字 /[\uFF00-\uFFFF]/ 全角符号 /[\u0000-\u00FF]/ 半角符号 --------------------- 这个正则我写的,仔细想了之后,这个答案还不够严谨,例如末尾为aba,这个应当是符合规则的,但会被这个正则报false,上面提到的三点应该是或者的关系,只要符合其一,就能符合。 改进后:/([^a][\S]{2}|[\S][^b][\S]|[\S]{2}[^c])$/ 不需要判断最后三位数以外的字符,默认即是任意字符,只要结尾不为abc,则全部都能匹配。
\b开头字符.*?结尾字符\b
将上面正则表达式中 开头字符,结尾字符替换为实际应该在开头和结尾的字符
如果开头和结尾字符是在正则中具有特殊含义的字符,则还需要转义
String regex = "^A*C*B$"; Pattern p = Pattern.compile(regex); java.util.regex.Matcher m = p.matcher("这里是你要匹配的字符串"); while (m.find()) { System.out.println(m.group()); }