You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python正则匹配含/不含mydomainname.com的URL

正确匹配目标URL的正则方案

正则表达式

r'(https?://[^"\s]*mydomainname\.com[^"\s]*|/[^"\s]+)'

代码示例

import re

# 示例HTML内容
html_content = """
<a href="https://mydomainname.com/page1.html">Link 1</a>
<img src="/pathout_themes/pathology_outlines/images/logo_for_social.jpg" alt="Logo">
<a href="https://www.mydomainname.com/path/subpage?param=val">Link 2</a>
<script src="/js/main.js"></script>
"""

# 编译正则并匹配
pattern = re.compile(r'(https?://[^"\s]*mydomainname\.com[^"\s]*|/[^"\s]+)')
matches = pattern.findall(html_content)

# 输出匹配结果
for match in matches:
    print(match)

表达式拆解说明

  • https?://[^"\s]*mydomainname\.com[^"\s]*:负责匹配带mydomainname.com的绝对URL
    • https?://:兼容http/https两种协议开头
    • [^"\s]*:匹配任意非引号、非空格的字符,避免捕获超出HTML属性范围的内容
    • mydomainname\.com:转义.确保匹配实际域名,防止.被当作通配符
  • /[^"\s]+:负责匹配根路径开头的相对URL
    • /:锁定根路径起始的相对路径格式
    • [^"\s]+:捕获所有非引号、非空格的路径字符,保证完整获取路径
  • |:逻辑或,同时兼容两种URL类型的匹配

注意点

  • 该正则默认URL处于HTML属性的引号包裹场景(如src="..."或href="..."),如果URL存在其他上下文,可调整[^"\s]部分的限制规则
  • 支持匹配包含&、=等特殊字符的URL,因为[^"\s]包含除引号、空格外的所有合法URL字符

内容的提问来源于stack exchange,提问作者YoYoYo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 04:50:11