如何从文本中提取一个单词并将其转换为链接?

时间:2014-05-07 23:57:04

标签: javascript hyperlink

<script>
function myClick(){
text = "<b><i>this is my text, THIS NEEDS TO BE A HYPERLINK </i></b>";
document.getElementById('heading1').innerHTML  = document.getElementById('heading1').innerHTML + text;
document.getElementById("heading1").style.textAlign="left";
document.getElementById("heading1").style.marginLeft="5px";

}
</script>

我只希望大写字母成为超链接,看起来很简单,但我无法在网上找到答案。 (-.-)

1 个答案:

答案 0 :(得分:0)

像这样的东西会这样做

var text = "<b><i>this is my text, THIS NEEDS TO BE A HYPERLINK </i></b>";
// Regex matching only uppercase letters and whitespaces where there
// have to be at least 2 in a row to match
var match = text.match(/[A-Z\s]{2,}/);
if (match && match.length) {
  match.forEach(function (str) {
    text = text.replace(str, '<a href="http://google.com/q=regex">' + str + '</a>');
  });
}

编辑: 如果只想替换单个单词,可以省略正则表达式中的\ s组: 此正则表达式仍然至少匹配两个大写字符,以防止错误检测大写单词或名称。

    var match = text.match(/[A-Z]{2,}/);