Javascript正则表达式:将url文本链接替换为图像,但不替换为html标记

时间:2009-09-08 23:13:20

标签: javascript html regex

嗨,这是我的代码:

                    <div style="overflow: hidden; width: 445px;">[IMG]http://i29.tinypic.com/mydog.png[/IMG] tak si to http://i29.tinypic.com/mycat.png  Lorem ipsum loremai <img width="15" border="0" align="middle" src="images/smejo.gif" valign="middle"/> <img src=http://www.example.com/index.png alt> <img src="http://www.example.com/index.png" alt>     <a href="#reakcia" title="reagovat na temu"><span class="poradna-tl-reaguj"><reaction> </span></a></div>
        </td>           </tr><img src=http://www.example.com/index.png alt><img src="http://www.example.com/index.png" alt>

我需要正则表达式模式,只用替换文本图片链接,不用触摸内部网址标记。 但我不能使用“ Lookbehind ”或占有量词,因为JS不支持它们= / 所以我只想抓住“http://i29.tinypic.com/mydog.png”和“http://i29.tinypic.com/mycat.png”。

我使用数组方法替换(将是greasemonkey脚本。) 非常感谢

1 个答案:

答案 0 :(得分:0)

......整整一天我都解决了这个问题,现在几分钟后......

答案

((?:(?:https?|ftp|file)://|www\.|ftp\.)[-A-Z0-9+&@#/%=~_|$?!:,.]*[A-Z0-9+&@#/%=~_|$]+.(jpg|png|gif|jpeg|bmp))(?!([^<]+)?>)