3 regex
-edit-注意到?最后.{2,}?
我发现你可以写
.{2,}?
Run Code Online (Sandbox Code Playgroud)
不完全和下面一样吗?
.{2}
Run Code Online (Sandbox Code Playgroud)
Dan*_*erg 18
号{2,}是指两次或更多次,而{2}手段正是两次.量词是由默认的贪婪,所以给出的字符串foo,你会得到foo,如果你使用.{2,},但fo如果你用.{2,}?,因为你来了懒惰.然而,后者允许在必要时配合的两倍多,但.{2}总是意味着正好两个字符.
因此,如果你有字符串test123和模式.{2,}?\d,你会得到test1它,因为它必须匹配最多四个字符,所以它\d也可以匹配.
不,他们是不同的.^.{2,}?$匹配长度至少为 2的字符串(如rubular.com上所示):
12
123
1234
Run Code Online (Sandbox Code Playgroud)
相比之下,^.{2}$只匹配长度恰好为 2的字符串(如rubular.com上所示).
不情愿的是,.{2,}?首先尝试只匹配两个字符是正确的.但是要匹配整体模式,可能需要更多.情况并非如此.{2},只能匹配2个字符.
| 归档时间: |
|
| 查看次数: |
418 次 |
| 最近记录: |