我正在尝试在字符串中找到特定的模式,而我对regex的了解非常基础。要查找小写字母,可以使用[a-z0-9]+
,但是如何查找前面和后面的字符?
允许的示例:(A)
,AB
,ABC
,[ABC]
,.AB'
,@ABCD#
。从本质上讲,只有大写字符(任何长度)或大写字符(任何长度)带有在前或在前或同时在这两者(前后)特殊字符。
不允许:abABCaa
,ABCaa
,aaAB
,123ABC
,12ABGGabc
,aaBaa
等。本质上是大写字母(任何长度),其前后都有字母或数字。
如何编写可过滤允许的示例或不允许的示例的正则表达式?
希望我清楚
最佳答案
这将匹配3组:匹配的大写字母,其前面的字符和其后面的字符。如果不需要分组,只需删除括号。
([^a-z0-9]*)([A-Z]+)([^a-z0-9]*)
有关匹配和分组的更多信息,请参考正确的Javadoc。
另外,对testing regex online的建议
关于java - 用于检测小写字母和数字前后的正则表达式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12494422/