我的字符串将如下
'popular-game-show-identifier-popular-games-mv-11'
在上面的字符串中我想检查,
identifier
之间必须存在。-mv-
。检查正常表达后的1,3,工作正常。
/[a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*(-mv-(\d+))$/
现在我想检查2,因为我将上面的表达式修改为
/[a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*(\-identifier\-)(\-[a-zA-Z0-9]+)*(-mv-(\d+))$/
如果我使用上面的正则表达式检查所有3个条件,则 preg_match()
始终返回0
。我没有到达我做错的地方。
答案 0 :(得分:3)
你有"额外"连字符
/[a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*(\-identifier\-)(\-[a-zA-Z0-9]+)*(-mv-(\d+))$/
应该是
/[a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*(\-identifier)(\-[a-zA-Z0-9]+)*(-mv-(\d+))$/