[英]Php preg_match help
我正在尝试找到可以匹配的php preg_match
test1 test2 [...]但不是test1 test2 [...]
并以$ match返回test2(...)作为输出。
我试过了
preg_match('/^[a-zA-Z0-9][\[](.*)[\]]$/i',"test1 test2[...]", $matches);
但是,这两种情况都匹配,并返回完整的句子。
任何帮助表示赞赏。
preg_match('/([a-zA-Z0-9]+[\[][^\]]+[\]])$/i',"test1 test2[...]", $matches);
请注意[a-zA-Z0-9]
后的+
表示一个或多个字母数字字符
整个表达式周围的(
和)
将允许您捕获整个表达式。
因为你的内容是围绕[]
我已经改变.*
以[^\\]]
因为正则表达式都在的情况下, 贪婪 test2[.....] test3[sadsdasdasdad]
将捕捉到年底,因为有一个]
。
另外请注意,由于您使用的是$
它总是会匹配所有东西,所以我不确定这是否是您打算做的事情。
您可以看到此作为参考。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.