Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.0k views
in Technique[技术] by (71.8m points)

求教一个正则匹配规则?

$str 可能的值有下列几种情况:

min:6|default:
default:
default:0
defautl:默认值
default:|max:20
default:0|required

等等,default:后面可能有值,也肯没值,不管有无值后面还有可能不再接其他规则了,有可能还有其他规则,不过如果接其他规则的话,会以|隔开。

现在我想匹配到这个 default 冒号后面的值,这个值可能有值,也可能是个空字符串。

请问这个正则规则该咋写啊,求教了,各位大佬。

我的编程语言是 php

特别说明一下,我这个 $str 字符串的长度,一般不会超过100个字符。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
/[|]?default:([^|
]*)[|]?/g

或者

/|?default:([^|
]*)|?/g

可以尝试下这个规则:
image

不过我觉得不用规则式也能很好的提取,甚至提取的准确度更好。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...