Regex 禁用除一个链接正则表达式之外的链接

Regex 禁用除一个链接正则表达式之外的链接,regex,regex-negation,Regex,Regex Negation,我必须禁用用户在评论中写的所有链接,除了一个指定的链接(假设在本例中是specified link.com) 当我为本例编写正则表达式时,我看到的情况是,用户编写的字符串包含最流行的tld字符串:.com、.net、.org…和字符串http和https 在这种情况下,我的正则表达式如下所示: @([^\s]*((\\.com)|(http)|(https))[^\s]*)@ 我已经忘记了这两种情况: 1) 大写组合,如.CoM等 2) 我必须显示包含指定link.com链接的链接 另外,在隐

我必须禁用用户在评论中写的所有链接,除了一个指定的链接(假设在本例中是specified link.com

当我为本例编写正则表达式时,我看到的情况是,用户编写的字符串包含最流行的tld字符串:.com、.net、.org…和字符串httphttps

在这种情况下,我的正则表达式如下所示:

@([^\s]*((\\.com)|(http)|(https))[^\s]*)@
我已经忘记了这两种情况:
1) 大写组合,如.CoM
2) 我必须显示包含指定link.com链接的链接

另外,在隐藏链接时,是否还有其他情况需要我查找

我已经尝试过并在谷歌上搜索过,但我无法重构我的正则表达式来寻找这两种情况。如何掩盖这种情况?

您可以使用

@(?:https?:\/\/)?(?:www\.)?specified-link\.com[^\s]*@

其中
https://
www.
是可选的

我刚刚发现我必须在正则表达式中放入(?I),使其不区分大小写。我必须把它放在哪里,使整个正则表达式不区分大小写,而不仅仅是它的一部分?我认为迭代所有链接(使用一个简单的正则表达式)然后禁用每个链接更容易,除非允许(使用另一个简单的正则表达式)。正则表达式在哪里使用
http | https
可以是
https?