用于查找和替换IMG src的正则表达式模式

时间:2013-08-29 16:16:03

标签: html regex replace

我正在尝试创建一个正则表达式模式,以便在我的HTML模板中查找并替换我的IMG src标记。

基本上,模式应该找到src的内容:

<img src="http://www.domain.com/img/building.jpg" />

然后将其替换为:

<img src="http://www.domain.com/image/timthumb.php?src=http://www.domain.com/img/building.jpg&w=800" />

我基本上需要附加到现有src属性的开头和结尾。

要找到的模式是什么,然后替换模式?

2 个答案:

答案 0 :(得分:1)

例如:

your_string.replace(/(<img\ssrc=")(.*?)("\s?\/>)/, "$1http://www.domain.com/image/timthumb.php?src=$2&w=800$3");

示例:

> '<img src="http://www.domain.com/img/building.jpg" />'.replace(/(<img\ssrc=")(.*?)("\s?\/>)/, "$1http://www.domain.com/image/timthumb.php?src=$2&w=800$3")
"<img src="http://www.domain.com/image/timthumb.php?src=http://www.domain.com/img/building.jpg&w=800" />"

答案 1 :(得分:0)

您可以尝试:

find="(<img\b(?:[^s>]+|\Bs|s(?!rc\s*=\s*))+src\s*=\s*)[\"']?((http:\/\/)?([^\/]+)\/(?:[^\/\s]+\/)*)([^\"'\s>]+)[\"']?"
replace="$1\"$3$4/image/timthumb.php?src=$2&w=800\""