我正在尝试在字符串中找到特定的模式,而我对regex的了解非常基础。要查找小写字母,可以使用[a-z0-9]+,但是如何查找前面和后面的字符?

允许的示例:
(A)ABABC[ABC].AB'@ABCD#。从本质上讲,只有大写字符(任何长度)或大写字符(任何长度)带有在前或在前或同时在这两者(前后)特殊字符。
不允许:
abABCaaABCaaaaAB123ABC12ABGGabcaaBaa等。本质上是大写字母(任何长度),其前后都有字母或数字。

如何编写可过滤允许的示例或不允许的示例的正则表达式?
希望我清楚

最佳答案

这将匹配3组:匹配的大写字母,其前面的字符和其后面的字符。如果不需要分组,只需删除括号。

([^a-z0-9]*)([A-Z]+)([^a-z0-9]*)


有关匹配和分组的更多信息,请参考正确的Javadoc
另外,对testing regex online的建议

关于java - 用于检测小写字母和数字前后的正则表达式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12494422/

10-11 22:54