用JS转换任何以hashtag开头的东西.但前提是超过3个字符
Converting anything that starts with hashtag with JS. But only if over 3 characters
我有一个简单的问题,我似乎只是不能弄清楚。我正在转换所有以#开始的文本为链接。
一切都很好,我的问题是我想要它转换只有当以#开头的单词是3个字符或更多(不包括#)。
。
我想把这些转换成一个链接:
#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()));
});
使用区间运算符语法
/#([a-zA-Z0-9]{3,})/g;
{3,}
基本上告诉它测试3个或更多字符
相关文章:
- 在JavaScript中输出转义字符
- 不同浏览器中的空白字符正则表达式行为
- Regex匹配除“”之外的所有字符;.js”;
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 使用RegExp查找url中的字符
- 如何为jQuery屏蔽输入插件创建一个允许字母数字、空格和重音字符的掩码
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 允许在文本框中使用某些字符
- 根据页面的位置突出显示文本中的字符
- 元素的内容必须由格式正确的字符数据或标记组成
- 如何将字符串拆分为字符,但在javascript中保留空格
- 使用Google Maps API向标记添加多个字符
- 处理JSON字符串会导致JavaScript错误
- 单元格的工具提示或标题不显示超过2000个字符
- javascript替换换行符和特殊字符
- angularjs删除动态形式元素中的特殊字符
- 元素名称上带有短划线 (-) 字符的 Json 对象
- 无法呈现js unicode字符“u1F310”
- 从指定范围创建字符数组
- 用JS转换任何以hashtag开头的东西.但前提是超过3个字符