【发布时间】:2015-02-14 01:40:54
【问题描述】:
我喜欢 StackOverflow 允许您通过在搜索字段中指定 [tagname] 来搜索标签的方式。我该如何编写一个解析器来帮助我将标签与普通文本分开。我可以想到手动方式,即使用子字符串和/或正则表达式的某种组合来获取打开和关闭方括号的位置,然后提取这些字符串,但我很好奇是否有更好的方法(和我的正则表达式技能充其量是低于标准的)
// example
$query = 'How to use [jQuery] [selector] selectors';
$tags = getTags($query); // $tags == 'jQuery, selector'
$text = getText($query); // $text == 'How to use selectors'
【问题讨论】:
-
只需使用正则表达式:
/\[(.*?)\]/