如何在RegEx中找到特定模式的许多实例?

时间:2012-02-21 21:23:12

标签: php regex recursive-regex

目前(在PHP中)我有以下正则表达式模式:

\[(.*) (.*)=(.*)\]

匹配[doSomething limits = true]

最终的结果是我的代码将解释该字符串并将其替换为编码为其返回的任何值。

但是,我的一些代码需要多个变量发送到函数,例如:

[doSomething limits = true otherlimitation = false sendfile = 1 title =“hello there”]

如何使正则表达式中的(。)=(。)可重复,以便匹配通过包含第一个(最重要的)函数名称发送的每个变量?

1 个答案:

答案 0 :(得分:0)

以下内容适用于您:

\[(.*) ((.*)=(.*))+\]

您可能还想用加号替换星号。目前,您的正则表达式会将[ =]与有效字符串匹配。

\[(.+) ((.+)=(.+))+\]