不是图像扩展名的Javascript正则表达式url
Javascript regex urls that are not image extensions
我有以下JavaScript匹配并替换url与html链接,但我需要这来排除url以。png|.jpg|.jpeg|.gif结尾
text = text.replace(
/('b(?:https?|ftp):'/'/[a-z0-9-+&@#'/%?=~_|!:,.;]*[a-z0-9-+&@#'/%=~_|])/gim,
'<a href="$1" class="autolink" target="_blank">$1</a>'
);
您可以在此之前进行测试:
if (!text.match(/'.(png|jpg|jpeg|gif)$/) {
text = text.replace(
/('b(?:https?|ftp):'/'/[a-z0-9-+&@#'/%?=~_|!:,.;]*[a-z0-9-+&@#'/%=~_|])/gim,
'<a href="$1" class="autolink" target="_blank">$1</a>'
);
}
如果您需要进行多次替换,那么您可以使用自定义替换函数,该函数根据图像结尾检查匹配并相应地执行操作。它将像这样工作:
var imageRegex = /'.(png|jpg|jpeg|gif)$/;
text = text.replace(/('b(?:https?|ftp):'/'/[a-z0-9-+&@#'/%?=~_|!:,.;]*[a-z0-9-+&@#'/%=~_|])/gim,
function(str) {
if (str.match(imageRegex)) {
return(str);
} else {
return('<a href="' + str + '" class="autolink" target="_blank">' + str + '</a>');
}
});
相关文章:
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 将javascript正则化为vb
- 将po-box javascript正则表达式转换为c#regex
- 被javascript正则表达式分组卡住了
- 从字符串中提取年份的Javascript正则表达式
- 尝试使用Javascript正则表达式来获取“&"分隔文本,无论它是否's是最后一个值
- JavaScript正则表达式匹配量
- 在字符串列表中搜索任何出现的单词,如果单词的第一个字符匹配,则高亮匹配单词.Javascript正则表达式
- javascript正则表达式来识别所有特殊字符
- Javascript-正则表达式,用于在未转义字符上拆分字符串,例如|,但忽略|
- 查找所有注释的JavaScript正则表达式
- javascript正则表达式验证未按预期工作
- javascript正则表达式,用于匹配带数字和不带数字的字符串
- 模仿负查找以匹配JavaScript正则表达式中没有紧跟特定字符的模式
- JavaScript正则表达式(带_-的字母数字字符)
- 用特定的javascript正则表达式替换每个单词
- 搜索日历事件的Javascript正则表达式
- 如何获取 JavaScript 正则表达式子匹配的位置
- 正则表达式子字符串以JavaScript开始和结束