Regex 正则表达式选择性匹配
假设有以下字符串:Regex 正则表达式选择性匹配,regex,Regex,假设有以下字符串: https://domain1.com https://domain2.com https://domain3.com https://testdomain.com https://domain4.com https://domain5.com random text 293928382 例如,如何仅匹配具有http的字符串,而排除包含testdomain的字符串?目前我有一个不包括testdomain ^((?!testdomain).)*$ 但是,我不知道如何
https://domain1.com
https://domain2.com
https://domain3.com
https://testdomain.com
https://domain4.com
https://domain5.com
random text
293928382
例如,如何仅匹配具有http
的字符串,而排除包含testdomain
的字符串?目前我有一个不包括testdomain
^((?!testdomain).)*$
但是,我不知道如何将http
匹配部分与上述表达式结合起来。有人能帮我把上面的内容和匹配的http
结合起来吗
目标是匹配:
https://domain1.com
https://domain2.com
https://domain3.com
https://domain4.com
https://domain5.com
谢谢 您可以将此正则表达式与负lookaheadd一起使用:
^https?://(?!(?:www\.)?testdomain\.).+$
正则表达式详细信息:
:在开始处匹配^https?://
或http://
https://
:否定的前瞻性声明我们没有紧跟其后的(?!(?:www\)?testdomain\)
或www.testdomain.com
testdomain.com
:匹配任意字符的1++$
^https?:/(?!.*/(?:www\)?testdomain\)。+$
我在这里尝试了这个表达式:但它与我问题中的任何字符串都不匹配。更正;这将是^https?:/(?!(?:www\)?testdomain\)。+$
请参阅演示:太好了,现在可以了!您能将此设置为答案吗?:)谢谢