JavaScript RegExp替换文本

JavaScript RegExp replace text

本文关键字:文本 替换 RegExp JavaScript      更新时间:2023-09-26

我想在一个句子中包装一个带有<a href=''></a>的#标签。我创建了一个正则表达式var exp = /#['w'dğüşçöı]+/gi

这个表达非常好,但我无法取代一个#嘿,伙计!带的字符串

<a href='hashtag/hey'>#hey</a> dude!

jsFiddle示例。

用括号将单词regexp括起来,使其成为替换字符串识别为$1:的捕获组

/#(['w'dğüşçöı]+)/gi

我在一个类似的PHP问题中找到了一个解决方案(https://stackoverflow.com/a/4277114/4161041):

var raw = "Hello #world! #hey dude!";
var pattern = /#('w*[a-zA-Z_ğüşçöı]+'w*)/ig;
var replacement = "<a href='"hashtag/$1'">#$1</a>";
var parsed = raw.replace(pattern, replacement);

http://jsfiddle.net/j3pttLnz/

我希望这能有所帮助。