查找并替换文本并换行 "href"
Find and replace text and wrap in "href"
我试图在 div (id="Test") 中查找以 "a04" 开头的特定单词(不区分大小写)。我可以找到并替换找到的单词。但是我无法正确使用 "href" link.
中的单词
我正在尝试使用以下可正确识别我的搜索条件的工作代码。我当前的代码按预期工作,但我需要帮助,因为我不知道如何将找到的工作用作 url id?
var test = document.getElementById("test").innerHTML
function replacetxt(){
var str_rep = document.getElementById("test").innerHTML.replace(/a04(\w)+/g,'<a href="">TEST</a>');
var temp = str_rep;
//alert(temp);
document.getElementById("test").innerHTML = temp;
}
我想将找到的单词包装在 href 中,但我不知道如何将找到的单词用作 url id (url.com?id=found word)。
有人可以帮忙指出如何引用找到的作品吗?
谢谢
如果您想将模式与捕获组一起使用,您可以将量词 +
移到组内,否则您将只能获得最后一次迭代的值。
\ba04(\w+)
\b
单词边界以防止匹配成为较长单词的一部分
a04
字面匹配
(\w+)
捕获第1组,匹配1+个单词字符
然后你可以在替换中使用第一个捕获组,方法是用 </code></p> 引用它
<p>如果字符串是 <code>a04word
,您将在组 1 中捕获 word
。
您的代码可能如下所示:
function replacetxt(){
var elm = document.getElementById("test");
if (elm) {
elm.innerHTML = elm.innerHTML.replace(/\ba04(\w+)/g,'<a href="url.com?id=">TEST</a>');
}
}
replacetxt();
<div id="test">This is text a04word more text here</div>
注意您不必像var temp = str_rep;
那样创建额外的变量
我试图在 div (id="Test") 中查找以 "a04" 开头的特定单词(不区分大小写)。我可以找到并替换找到的单词。但是我无法正确使用 "href" link.
中的单词我正在尝试使用以下可正确识别我的搜索条件的工作代码。我当前的代码按预期工作,但我需要帮助,因为我不知道如何将找到的工作用作 url id?
var test = document.getElementById("test").innerHTML
function replacetxt(){
var str_rep = document.getElementById("test").innerHTML.replace(/a04(\w)+/g,'<a href="">TEST</a>');
var temp = str_rep;
//alert(temp);
document.getElementById("test").innerHTML = temp;
}
我想将找到的单词包装在 href 中,但我不知道如何将找到的单词用作 url id (url.com?id=found word)。
有人可以帮忙指出如何引用找到的作品吗?
谢谢
如果您想将模式与捕获组一起使用,您可以将量词 +
移到组内,否则您将只能获得最后一次迭代的值。
\ba04(\w+)
\b
单词边界以防止匹配成为较长单词的一部分a04
字面匹配(\w+)
捕获第1组,匹配1+个单词字符
然后你可以在替换中使用第一个捕获组,方法是用 </code></p> 引用它
<p>如果字符串是 <code>a04word
,您将在组 1 中捕获 word
。
您的代码可能如下所示:
function replacetxt(){
var elm = document.getElementById("test");
if (elm) {
elm.innerHTML = elm.innerHTML.replace(/\ba04(\w+)/g,'<a href="url.com?id=">TEST</a>');
}
}
replacetxt();
<div id="test">This is text a04word more text here</div>
注意您不必像var temp = str_rep;