如何从标签中的p包装一个单词

时间:2016-04-10 12:27:52

标签: javascript html5

我有p tag,我想在a tag

中换一个单词

Lorem ipsum @dolor sit amet,consectetur to
Lorem ipsum @dolor坐下来,奉献

我试过这个:

objectP = document.getElementsByTagName('p');
$.each(objectP, function(i, val){

    arrayWords = val.innerHTML.split(" ")

    $.each(arrayWords, function(i, val){

        if(val[0] === '@'){

            val.wrap("<a></a>")

        }

    })

})

1 个答案:

答案 0 :(得分:0)

您可以将正则表达式与捕获组结合使用以简化操作

objectP = document.getElementsByTagName('p');

$.each(objectP, function(i, val){
    val.innerHTML = val.innerHTML.replace(/(@.*?)\s/g, "<a href='#'>$1</a>");
})

此处(@.*?)是捕获组,$1将包含整个匹配字符串中捕获的字符串。