适用于PHP的正则表达式:匹配一组引号中的字符

时间:2015-11-08 14:05:07

标签: php regex

<input name="so and so" id="john doe" value="something something" />

我想只匹配&#34;中的空格字符。 of value = attribute。

我想出了这个:

value="[^"',:<>/\r\n]*[ ][^"',:<>/\r\n]*"

问题是这匹配整个字符串,我只需要上面匹配字符串中的空格。

我正在阅读一些教程,这使我认为我需要使用条件语句,但我似乎无法弄清楚它是如何工作的。我的猜测(当然没有效果)是:

(?(?=value="[^"',:<>/\r\n]*[^"',:<>/\r\n]*")[ ])

感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

\bvalue="\K|\G(?!^)[^"]*?\K\s+

您可以使用此功能查找spaces value="以及关闭"之前的(?:(?<=\bvalue=")|\G(?!^))[^"]*?\K\s+(?=[^"=]*") 。请参阅演示。

https://regex101.com/r/lR1eC9/11

编辑:

{{1}}

参见演示。

https://regex101.com/r/lR1eC9/13