正则表达式匹配大写字符与小写搜索

时间:2014-08-19 12:30:52

标签: regex notepad++ uppercase lowercase

我使用记事本++,我发现当我使用正则表达式搜索我特别想要找到小写字母的字符串时(" [az]")它有时会返回大写字母。

我最初使用字符串搜索:

^[A-Z][a-z].+?$

目的是删除文件中以大写字符开头的任何行,后跟小写字母,后跟任何行直到行尾。但是,这个返回的行像是" CLONE"和" DISEASE"这只是大写字母。出于好奇,我试过了:

^[a-z].+?$

它仍然以全大写的形式返回这些行。最后,我试过了:

^[\u0061-\u007A].+?$

仍然返回全部大写文本行。我的括号外是否有引起这种情况的事情?

1 个答案:

答案 0 :(得分:6)

与许多其他文本编辑器一样,Notepad ++为Match case提供了全局选项。即使您的表达式不包含内部修饰符(?i),结果也可能是意外的,具体取决于Match case是设置为ON还是OFF。

因此,您的ALLCAPS行与^[A-Z][a-z].+?$的有效匹配。

选中Match case以启用正则表达式搜索的区分大小写:

enter image description here