正则表达式没有继续

时间:2012-02-15 09:45:10

标签: regex

我正在尝试解析一些像这样的bbc代码:

[item=1]a[/item]
[item=2]b[/item]
[item=3]c[/item]

我能够获得第一项,但我无法得到第二项和第三项。我正在尝试抓取每个项目,并将其转换为链接。这是我要去的结果:

<a href="#1">a</a>
<a href="#2">b</a>
<a href="#3">c</a>

这就是我正在做的事情:

/\[item=(\d+)\](.*?)\[\/item\]/

这给了我:

["[item=1]a[/item]", "1", "a"]

我做错了什么?

1 个答案:

答案 0 :(得分:2)

尝试在表达式中添加“全局”选项

/\[item=(\d+)\](.*?)\[\/item\]/gi

应该适用于大多数正则表达式实现,但是当你提供正在使用的那个(或者至少是你编程的语言)时,我可以检查一下。

进一步说明:也添加不区分大小写的选项,因此ITEM也会匹配。

进一步说明:这是working example