0

我有一个问题,我似乎无法在网上找到答案。我有一些文字:

Variable1 = Value1, Variable2 = Value2, Variable3 = Value3, Variable4 = Value4,

假设我要查找的字符串是"Variable2 = "

我要"Value2"退货。它不能包含逗号。

到目前为止,我能想到的最好的是:

(Variable2)\s\=\s(.+?),

但这会返回Variable2 = Value2,

附加信息

我被一个名为 Automate BPA 的程序卡住了。它有一些对正则表达式的内置支持。

我希望这是可能的,我很感激任何帮助!

4

2 回答 2

1

在目标周围使用向后看和向前看:

(?<=Variable2\s?=\s?).+?(?=,|$)

前瞻匹配逗号或输入结尾,因此如果您搜索它,它仍将匹配最后一个词。

于 2013-07-24T00:54:51.777 回答
0

$var = 'Variable1 = Value1, Variable2 = Value2, Variable3 = Value3, Variable4 = Value4,';

$new = preg_split( '/,/', $var);

print_r($new);

这将把它分解成一个索引数组

Array ( [0] => Variable1 = Value1 [1] => Variable2 = Value2 [2] => Variable3 = Value3 [3] => Variable4 = Value4 [4] => )

于 2013-07-24T00:18:40.477 回答