2014-06-18 121 views
-1

我升级到的新版本扩展软件包含了正则表达式。我试图理解他们好一点,所以希望打破他们所包含的两个词,以避免在词的开始处出现双重大写。正则表达式中的IJ - 这是什么意思?

首先是

\b[:upper:][:upper:][:lower:]+ 

我认为这意味着有一个字断裂项开始,与前两个字母有资本,然后一个或多个小写字母之前。

二是

\b(IJ|CC)[:lower:]+ 

我引用如果一个单词以大写字母“I”和资本“J”或连续两个大写字母“C”加上一个或多个小写字母开头,让他们来指例外。

我觉得我在这里错过了一些东西。任何人都可以建议这些表达式是什么意思?

+0

的可能重复[参考 - ?这是什么意思正则表达式(http://stackoverflow.com/questions/22937618/reference-what-does-this-regex-mean) – Mathletics

回答

1

“IJ”表示字符序列,“I”后跟“J” - 没什么特别的 - 并且关于行为的结论(如果不是推理)是正确的。

表达\b(IJ|CC)[:lower:]+ 仅仅是\b[:upper:][:upper:][:lower:]+ 一个限制性子集,这限制了用 “IJ” 或 “CC” 开始的输入。

String Matches 
------ ------- 
foo  (None) 
IJ  (None)  No mach on [:lower:]+ 
IJfoo  1, 2  Matches IJ, which also matches [:upper:][:upper:] 
CCfoo  1, 2 
XXfoo  1   Matches [:upper:][:upper:], not IJ|CC 
相关问题