javascript - 正则表达式在 CKeditor 的 HTML 中查找 png-gif-jpg 图像链接

标签 javascript regex

我使用以下正则表达式来拦截 CKeditor 中发布的图像链接:

var editorContent = String(qa_ckeditor_content.getData());
if( editorContent.match(/(https?:\/\/\S+\.(?:jpg|png|gif|jpg<br|png<br|gif<br|jpg<\/p>|png<\/p>|gif<\/p>))\s+/) != null ) {
    alert('Sorry, image links not allowed.');
    return false;
}

但是,这不会找到类似的内容:

<a href="#">myimage.png</a>

我正在尝试查找所需的正则表达式 png<... (加上以下字符)。我尝试使用一个似乎不正确的点:

/(https?:\/\/\S+\.(?:jpg|png|gif|jpg<.|png<.|gif<.))\s+/

我知道这是一个初学者问题,但我未能找到正确的解决方案:-(

感谢您的宝贵时间!

最佳答案

首先,我想指出黑名单的虚假安全性。总会有其他你没有想到的案例能够成功。

话虽这么说;您可以使用正则表达式搜索 .jpg、.png、.gif 等,后跟除单词字符之外的任何内容。

/\.(jpg|png|gif)\b/

这至少会在我能想到的任何情况下匹配这些扩展,并且可以替换您迄今为止拥有的整个正则表达式。

关于javascript - 正则表达式在 CKeditor 的 HTML 中查找 png-gif-jpg 图像链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16769197/

相关文章:

ios - Cocoa Touch 中的正则表达式验证

javascript - 实际时间网页已与jquery一起使用

javascript - 在 JavaScript 中将对象转换为字符串的区别

java - 如何在服务器中动态指定jsp文件上传存储文件夹路径

java - 正则表达式替换java中的特定字符

regex - 在 Xcode 4 中使用通配符查找和替换

javascript - 是否可以通过ajax获取有关NPM包的信息?

javascript - 内容在 DIV 中无法正确显示

javascript - 如何编写正则表达式来检查特定数量的字符?

Python正则表达式解析并放入多维列表