当前位置:Gxlcms > PHP教程 > 哎,求2个正则合并成一个正则怎么写啊,谢谢

哎,求2个正则合并成一个正则怎么写啊,谢谢

时间:2021-07-01 10:21:17 帮助过:4人阅读

这是要匹配的内容
Primary Color:Multi-ColorMulti Pack Indicator:NoBattery Type:Does Not Contain a Battery


这个个正则,怎么合并成一个啊
$a = preg_match_all('/LightRowHead.*?>(.*?):.*?LightRow.*?>(.*?)(.*?):.*?DarkRow.*?>(.*?)  
我这样写不对
$a = preg_match_all('/[LightRowHead|DarkRowHead].*?>(.*?):.*?[LightRow|DarkRow].*?>(.*?)  

求高人指点


回复讨论(解决方案)

(xx|yy)

用方括号括起就变成字符单选了,要用圆括号
$a = preg_match_all('/(LightRowHead|DarkRowHead).*?>(.*?):.*?(LightRow|DarkRow).*?>(.*?) 不想加入向前引用的话可写作
$a = preg_match_all('/(?:LightRowHead|DarkRowHead).*?>(.*?):.*?(?:LightRow|DarkRow).*?>(.*?)
需要前后配对的话可写作
$a = preg_match_all('/(LightRow|DarkRow)Head.*?>(.*?):.*?\\1.*?>(.*?)

用方括号括起就变成字符单选了,要用圆括号
$a = preg_match_all('/(LightRowHead|DarkRowHead).*?>(.*?):.*?(LightRow|DarkRow).*?>(.*?) 不想加入向前引用的话可写作
$a = preg_match_all('/(?:LightRowHead|DarkRowHead).*?>(.*?):.*?(?:LightRow|DarkRow).*?>(.*?)
需要前后配对的话可写作
$a = preg_match_all('/(LightRow|DarkRow)Head.*?>(.*?):.*?\\1.*?>(.*?) 果然,csdn的人就是热情,谢谢你和二楼..

人气教程排行