【发布时间】:2013-05-02 05:28:50
【问题描述】:
我有一个这样的字符串:
[abc] 12345 [abc] 67890 [/abc] [/abc]
我想匹配括号内的内容,但如果找到另一个左括号(例如,[abc]),则不返回匹配项。函数/\[abc\](.*)\[\/abc\]/i 会输出:
12345 [abc] 67890 [/abc]
但这不是我想要的,因为文本内还有另一个左括号。预期的结果是:
67890
有什么解决方法的建议吗?
【问题讨论】:
-
如果您需要在这样的语法中询问和解决复杂的问题,您可能需要一个完整的词法分析器(也称为标记器)和解析器系统,对于这个问题,正则表达式可以工作,但对于更难的问题它不会
标签: regex preg-match