本文介绍了解密一个简单的正则表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有问题的正则表达式是
(\d{3,4}[.-]?)+
示例文本
707-7019-789
我目前的进展
( )+ a capturing group, capturing one or more
\d{3,4} digit, in quantities 3 or 4
[.-]? dot (or something) or hyphen, in quantities zero or one <-- this is the part I'm interested in
根据我的理解,这应该匹配 3 或 4 位数字,后跟一个点(或任何东西,因为点匹配任何东西)或一个连字符,捆绑在一个组中,一次或多次.为什么这不匹配
From my understanding this should match 3 or 4 digit number, followed by a dot (or anything, since dot matches anything) or a hyphen, bundled in a group, one or more times. Why doesn't this matches a
707+123-4567
然后呢?
推荐答案
.
在字符组中 []
只是文字 .
,它没有任何东西"的特殊含义.[.-]?
的意思是一个点或一个连字符或什么都没有",因为使用 ?
可以使整个组成为可选.
.
in a character group []
is just a literal .
, it does not have the special meaning "anything". [.-]?
means "a dot or a hyphen or nothing", because the entire group is made optional with the ?
.
这篇关于解密一个简单的正则表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!