我有一些带有<img>
标签的文本,我需要将它们分开。它的格式
<img.../> Text text text <img.../>text text text<img.../> text text text
我有我的正则表达式 qworkingpreg_match_all
以便我得到
Array
(
[0] => Array
(
[0] => <img ... />
[1] => <img ... />
[2] => <img ... />
[3] => <img ... />
)
但如果我能得到,那就太好了
Array
(
[0] => Array
(
[0] => <img ... />
[1] => text text text
[2] => <img ... />
[3] => text text text
[4] => <img ... />
[5] => text text text
)
我已经尝试了一些东西,但我真的对 PCRE 不太了解。preg_split
如果可以避免,我不想使用它,因为每个图像标签都不同。
(我知道一般的 HTML 解析器不能用正则表达式编写,但在这种情况下,我认为这会起作用,因为我正在处理的输入数据是我描述的形式。不会有任何嵌套我需要担心的图像标签。)
PS我试过/!<img.+>/
,/!(<img.+>)/
和/(!(<img.+>))/
来获取不匹配项,但它返回一个空数组。我不知道调试正则表达式以了解我做错了什么的好方法。