String to be matched = "AAA/up to eight upper case letters/AAA" : ex1 : AAA/BB/AAA ex2 : AAA//AAA ex3: AAA/BBCCDDEEFF/AAA
如何匹配中间的0到8个大写字母(即正斜杠之间的字符串)?
我试过regex : AAA/(?!(.*[a-z].*)[A-Z]{0,8})/AAA
但它与上面的任何字符串都不匹配。
(Regex AAA/[A-Z]{0,8}/AAA确实匹配字符串,但它也匹配小写字母。ex: AAA/bb/AAA)
发布于 2016-08-23 10:36:24
您的原始AAA/[A-Z]{0,8}/AAA是正确的,但是在正则表达式之外的某个地方设置了“不区分大小写”正则表达式修饰符,因此您也可以匹配小写字母。(您检查了Notepad++中的“匹配情况”复选框吗?)
您可以使用(?-i)构造使正则表达式(或表达式的一部分)区分大小写:
(?-i)AAA\/[A-Z]{0,8}\/AAA发布于 2016-08-23 10:29:09
https://stackoverflow.com/questions/39098647
复制相似问题