我根据变量的结果动态创建一个正则表达式.我已成功测试了大部分表达式,但我正在努力处理长度不同的部分.
如何修改正则表达式,(a_)?c(davison)\.nsf?以便下面的任何字符串都被归类为匹配?
基本上,要被视为匹配,字符串必须符合以下标准 -
任何提示和技巧将不胜感激.
要使每个部分都是davison可选的,使用嵌套的可选组((?:...)?),并设置长度限制,如果找到13个字符,则可以使用在开始时锚定的负前瞻来使匹配失败(因此,(?!.{13})将允许12个字符串以及更少的字符串字符大小):
^(?!.{13})(a_)?c(d(?:a(?:v(?:i(?:s(?:on?)?)?)?)?)?)\.nsf$
Run Code Online (Sandbox Code Playgroud)
请参阅正则表达式演示
| 归档时间: |
|
| 查看次数: |
67 次 |
| 最近记录: |