使用JS转换以hashtag开头的任何内容。但只有超过3个字符

时间:2014-08-13 05:04:30

标签: javascript hashtag

我有一个简单的问题,我似乎无法弄明白。我将所有以#开头的文本转换为链接。

一切正常,我的问题是,如果以#开头的单词是3个字符或更多(不计算#),我希望它仅转换。

EX。

我希望将它们转换为链接:

#test #cool #stackoverflow

我不希望这些转换为链接:

#ok #no #m

替换要链接的单词的功能如下:

function linkHashtags(text) {
    hashtag_regexp = /#([a-zA-Z0-9]+)/g;
    return text.replace(hashtag_regexp,
        '<a href="/search/$1">#$1</a>');
}

然后我调用这样的函数:

$('.text p').each(function () {
    $(this).html(linkHashtags($(this).html()));
});

1 个答案:

答案 0 :(得分:3)

使用区间运算符语法

/#([a-zA-Z0-9]{3,})/g;

{3,}基本上告诉它测试3个或更多字符