在 JavaScript 正则表达式中,如何转例如
Check out http://example.com/foobar#123
进入
Check out <a href="http://example.com/foobar#123">example.com/foobar#123</a>
谢谢!
在 JavaScript 正则表达式中,如何转例如
Check out http://example.com/foobar#123
进入
Check out <a href="http://example.com/foobar#123">example.com/foobar#123</a>
谢谢!
假设str
是包含该文本的字符串,这是对捕获组的简单使用:
str = str.replace(/(http:\/\/)([^ ]+)/g, '<a href="$1$2">$2</a>');
当然,这假设文本中还没有任何链接标签,因为如果有的话,它会把它们弄乱。仅在标记文本中的标记之外执行此操作并非易事(仅使用单个正则表达式不能绝对可靠地完成,您必须进行解析)。
使用此替换调用:
s = 'Check out http://example.com/foobar#123';
repl = s.replace(/(https?:\/\/(\S+))/i, "<a href='$1'>$2</a>");
//=> Check out <a href='http://example.com/foobar#123'>example.com/foobar#123</a>