我有以下正则表达式。
\[rep=([0-9]*?),([0-9]*?)\]([\w#]{4,11}),([\w#]{4,11}),([\w#]{4,11}),([\w#]{4,11})\[\/rep\]对我来说,这似乎是完全有效的-它的意思是匹配例如以下字符串:
[rep=0,20]#fff,#fff000,#111,transparent[/rep]例如,虽然它在RegExr中看起来确实有效,但它的MyCode似乎不会触发。
发布于 2016-05-12 00:04:14
我找到问题了。必须转义散列#。
\[rep=([0-9]*?),([0-9]*?)\]([\w\#]{4,11}),([\w\#]{4,11}),([\w\#]{4,11}),([\w\#]{4,11})\[\/rep\]
发布于 2016-05-11 23:58:08
看起来您没有将delimiters放入您的PHP实现中。
if( preg_match("/\[rep=([0-9]*?),([0-9]*?)\]([\w#]{4,11}),([\w#]{4,11}),([\w#]{4,11}),([\w#]{4,11})\[\/rep\]/", $str) ) {
}https://stackoverflow.com/questions/37167374
复制相似问题