regex 匹配全部大写或全部小写正则表达式的单词列表

wi3ka0sx  于 2022-12-14  发布在  其他
关注(0)|答案(2)|浏览(121)

我正在使用CodeMirror to write a simple mode(不确定他们使用什么类型的正则表达式),我想知道如果我有一个单词列表,我想匹配,如aaabbb,和ccc我可以做/aaa|bbb|ccc/,它将匹配小写版本。但我如何让它只匹配所有小写和所有大写?相当于/aaa|AAA|bbb|BBB|ccc|CCC/

643ylb08

643ylb081#

如果要匹配像AaAaAA这样的单词,则需要查找不区分大小写的修饰符i

/aaa|bbb|ccc/i

可以看到这在工作**here**。
如果您只想匹配大写和小写字符组,则需要一个更复杂的正则表达式,如:

/^[a-z]+$|^[A-Z]+$/g

两个组a-zA-Z处理小写和大写字符,这两个组都受字符串的开始字符(^和结束字符$的约束。因为您希望所有字符都是大写或小写,所以您还需要使用一个管道(|)来表示OR
这可以在工作**here**中看到。

polkgigr

polkgigr2#

如果我没猜错的话,这个模式就是这样:

^([A-Z][A-Z]*|[a-z][a-z]*)$

解释,或者:

  • 大写字母后跟全部大写字母
  • 小写字母后跟全部小写字母

相关问题