有没有办法在正则表达式中使用 not (^) 来表示多个字符?
我想制作一个匹配所有相对路径的正则表达式模式。
我想要匹配的内容:
<img src="image.png"
<img src="http_image.png"
我不想匹配的内容:
<img src="http://example/image.png"
我尝试与这些模式匹配,但它们都不起作用:
\src="[^http://]\
\src="^(http://)\
\src="[^h][^t][^t][^p][^:][^/][^/]\
\src="([^h][^t][^t][^p][^:][^/][^/])\
src
属性将始终使用双引号 ("
),而不是单引号 ('
)。它将始终包含“http”源,而不是“https”或其他源。
I want to make a Regex pattern that matches all relative paths.
What I want to match:
<img src="image.png"
<img src="http_image.png"
What I don't want to match:
<img src="http://example/image.png"
I tried matching with these patterns, but none of them work:
\src="[^http://]\
\src="^(http://)\
\src="[^h][^t][^t][^p][^:][^/][^/]\
\src="([^h][^t][^t][^p][^:][^/][^/])\
The src
attribute will always be formatted with double-quotes ("
), not single-quotes ('
). It will always contain an "http" source, not "https" or others.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
解决此问题的方法是使用否定先行断言:
Rubular 链接
The way to solve this is by using negative lookahead assertion:
Rubular link