我正在使用javascript正则表达式为所有找到的网址添加html标记:
var exp = /(((|www\.|(http|https|ftp|news|file)+\:\/\/)[_.a-z0-9-]+\.[a-z0-9\/_:@=.+?,##%&~-]*[^.|\'|\# |!|\(|?|,| |>|<|;|\)]))/ig;
popupText = popupText.replace(exp , "<font color='red'>"+"<b>$&</b>"+"</font>" );
现在问题是我想确保如果找到的网址长度大于20个字符,它会发出短信
请参阅 $&amp; 获取匹配字符串,我需要添加过滤器/检查以获取其长度。
感谢任何帮助
答案 0 :(得分:1)
使用替换的功能形式:
popupText = popupText.replace(exp , function(match) {
if (match.length > 20)
return "<font color='red'>"+"<b>" + match etc
else
return match; // return the argument, that is, don't replace
})