我真的很难在这上面贴上标签,这可能就是为什么我无法通过搜索找到我需要的东西.
我想要匹配以下内容:
我正在使用的平台不允许指定不区分大小写的搜索.我尝试了以下正则表达式:
.*[aA]uto(?:matic)[ ]*[rR]eply.*
Run Code Online (Sandbox Code Playgroud)
认为(?:matic)会导致我的表达匹配Auto或Automatic.但是,它只是匹配Automatic.
这是使用Perl作为正则表达式引擎(我认为这是PCRE但我不确定).
ike*_*ami 26
(?:...)是(...)算术的正则表达式模式:它只是覆盖优先级.
ab|cd # Matches ab or cd
a(?:b|c)d # Matches abd or acd
Run Code Online (Sandbox Code Playgroud)
一个?量词是什么使匹配可选.
a? # Matches a or an empty string
abc?d # Matches abcd or abd
a(?:bc)?d # Matches abcd or ad
Run Code Online (Sandbox Code Playgroud)
你要
(?:matic)?
Run Code Online (Sandbox Code Playgroud)
没有不必要的前导和尾随.*,我们得到以下内容:
/[aA]uto(?:matic)?[ ]*[rR]eply/
Run Code Online (Sandbox Code Playgroud)
正如@ adamdc78指出的那样,匹配AutoReply.使用以下内容可以避免这种情况:
/[aA]uto(?:matic[ ]*|[ ]+)[rR]eply/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28104 次 |
| 最近记录: |