PHP正则表达式[替换]

时间:2016-12-02 23:14:53

标签: php html regex replace

请求帮助处理html代码版[解析]

中的正则表达式的两个案例

现在我使用具有下一个逻辑的解析器(下面的例子与YouTube)

从YouTube中选择源html代码的唯一片段(ED96RtfF22E)并将其放入我网站上的内部标签[YouTube]

消息来源:

replace|0|#<iframe[^>]*youtube\.com\/embed\/([^"]*)"[^>]*>[^<]*<\/iframe>#|[YouTube]$1[/YouTube]|1|

使用:

<img alt="" src="xxx.com/ooo.jpg?12345"> 

基于此逻辑需要解决以下问题:

案例#1

用图片替换部分HTML代码

消息来源:.jpg(?12345)之后的故事不正确

<img alt="" src="xxx.com/ooo.jpg">

需要:“src”标签没有像replace|0|...|...|1|

这样的故事
{{1}}

此处标记为“...”的部分是用于更改的php正则表达式的位置。 我很感激你的帮助!

1 个答案:

答案 0 :(得分:1)

对于第一种情况:<img.*src=\"[^?]*).*(\">)并替换为\1\2

对于第二种情况:<iframe.*src=\".*embed\/(.*?)\".*?<\/iframe>并替换为[YT]\1[/YT]

如果您不想更换,请使用:

preg_match('/<iframe.*src=\".*embed\/(.*?)\".*?<\/iframe>/', $input, $match);
$output = "[YT]" + $match[1] + "[/YT]"