我有一些麻烦得到一些正则表达式来删除一些文本,我需要[text]
从[text][maybehere]anytext
删除。正则表达式删除[]和其中的所有内容
所以基本上是第一组[]和其中的任何东西。文本的其余部分可以包含任何东西,包括空格,并可能有另一组[]。
我有这个:/\[.*\]/
但它是删除所有的brakets和内容。
我正在使用PHP
任何想法?
我有一些麻烦得到一些正则表达式来删除一些文本,我需要[text]
从[text][maybehere]anytext
删除。正则表达式删除[]和其中的所有内容
所以基本上是第一组[]和其中的任何东西。文本的其余部分可以包含任何东西,包括空格,并可能有另一组[]。
我有这个:/\[.*\]/
但它是删除所有的brakets和内容。
我正在使用PHP
任何想法?
注意在preg_replace
的第四个参数(更换极限):
$str = preg_replace('/\[[^\]]*\]/', '', $str, 1);
我建议
preg_replace('#\[.*?\]#', '', $stringVar, 1);
它将删除第一个匹配的[ ]包括完全的内容。
@webnoob:对于一个可以理解的正则表达式介绍检查http://regular-expressions.info/ - 和http://stackoverflow.com/questions/89718/is-there-anything-like-regexbuddy-in-the - 一些正则表达式工具的开源世界。 – mario 2011-05-27 23:15:19