我有一个 PHP preg_match_all
和正则表达式问题。
我有以下代码:
<?php
$string= 'attribute1="some_value" attribute2="<h1 class=\"title\">Blahhhh</h1>"';
preg_match_all('/(.*?)\s*=\s*(\'|"|&#?\w+;)(.*?)\2/s', trim($string), $matches);
print_r($matches);
?>
似乎无法捕获我想要传递带引号的HTML实例中的转义引号。我已经尝试了许多基本引号内引号REGEX修复解决方案,但似乎没有一种适合我。我无法在这个现有的REGEX中正确放置它们。
我不是一个REGEX专家,请问有人可以指点我正确的方向吗?
我想要实现的结果是这样的:
Array
(
[0] => Array
(
[0] => attribute1="some_value"
[1] => attribute2="<h1 class=\"title\">Blahhhh</h1>"
)
[1] => Array
(
[0] => attribute1
[1] => attribute2
)
[2] => Array
(
[0] => "
[1] => "
)
[3] => Array
(
[0] => some_value
[1] => <h1 class=\"title\">Blahhhh</h1>
)
)
感谢您的选择。