简体   繁体   English

使用JQUERY和REGULAR EXPRESSIONS重写URL

[英]URL rewrite using JQUERY and REGULAR EXPRESSIONS

I browsed all the afternoon trying to find a good solution, but with no luck. 我整个下午都在浏览,试图找到一个好的解决方案,但是没有运气。

This is the problem: I have an old html website. 问题是:我有一个旧的html网站。 I have to change every link built in this way: 我必须更改以这种方式构建的每个链接:

<a href="javascript: OpenImage('/dir1/dir2/Image321.jpg',' Image description ');void(0);">

with a standard a href: 标准的href:

<a href="/dir1/dir2/Image321.jpg" title="Image description">

I think I have have to look for href beginning with "avascript:" 我认为我必须寻找以“ avascript:”开头的href

$("a[href^='javascript:']")

and change it using regular expression.. 并使用正则表达式进行更改。

But after thousands test I can't solve it.. 但是经过数千次测试后,我无法解决它。

Any idea? 任何想法? thanks 谢谢

(<a href=")[^']+'([^']+)','([^']+).*

Try this.Replace by $1$2" title="$3"> .See demo. 尝试一下。替换为$1$2" title="$3"> 。请参阅演示。

http://regex101.com/r/lZ5mN8/14 http://regex101.com/r/lZ5mN8/14

var re = /(<a href=")[^']+'([^']+)','([^']+).*/gm;
var str = '<a href="javascript: OpenImage(\'/dir1/dir2/Image321.jpg\',\' Image description \');void(0);">';
var subst = '$1$2" title="$3">';

var result = str.replace(re, subst);

try this : 尝试这个 :

var re = /(^<a\s*href=")javascript:\s*OpenImage\('(.*)'\s*,\s*'(.*)'([^<]+)">/gmi;
var str = '<a href="javascript: OpenImage(\'/dir1/dir2/Image321.jpg\',\' Image description \');void(0);">\n\n<a href="javascript: OpenImage(\'/dir1/dir2/Image321.jpg\',\' Image description \');void(0);"> djhjdh</a>\n\n<a href="javascript: OpenImage(\'/dir1/dir2/Image321.jpg\',\' Image description \');void(0);"><img src="asdf"></a>';
var subst = '\1\2" title="\3">';

var result = str.replace(re, subst);

live demo 现场演示

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM