正则表达式,用于获取包含该属性的所有标记(href | src)

时间:2011-05-20 17:11:26

标签: php html regex string tags

这不起作用。任何人都可以找到原因吗?

"/<(.*)[href|src](.*)>/ismU"

2 个答案:

答案 0 :(得分:6)

有几件事:

如果必须,

(.*)将跨越标记边界匹配(即使您确实使用/U修饰符默认使量词处于惰性状态。

[href|src]表示“匹配一个字符,href|sc“。

如果您在正则表达式中不使用/m^个锚点,$修饰符将毫无用处。

请改为尝试:

/<[^<>]*(href|src)[^<>]*>/i

但即便如此,将正则表达式应用于HTML也会遇到麻烦。

答案 1 :(得分:0)

尝试使用XPaths而不是正则表达式来解决您的问题。