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

如何用正则表达式提取以'-'分隔的字符串中的邮箱地址?

提取每行第一个'-'前的邮箱地址

你用^(.*?)-得到'-'后内容,应该是工具默认返回了匹配的整体(包括'-')或者你没正确取捕获组内容。给你两个实用的正则写法:

  • 精准匹配邮箱(更严谨)
    利用邮箱必含@的特性,匹配第一个'-'前的完整邮箱:

    ^[^-]+@[^-]+
    

    解释:^锁定行开头,[^-]+匹配任意非'-'的字符,结合@就能精准定位到邮箱,不会误抓其他内容。

  • 匹配第一个'-'前所有内容(更简单)
    如果确定每行第一个'-'前就是邮箱,直接用这个极简正则:

    ^[^-]+
    

    解释:[^-]+会从行首开始,一直匹配到第一个'-'为止,结果就是你要的邮箱。

另外也可以用正向预查写法,适合需要捕获组的场景:

^(.*?)(?=-)

这里(?=-)是预查符号,只会匹配到'-'的位置但不包含它,捕获组1里就是目标邮箱。

测试示例行:

a.jones@meonly.com-935567
a.smith@youonly.net-crankdev-539046
AAPets.bark@why.org-Cobbled Shoes Collective-9909

用上面任意一个正则,都能提取出对应的邮箱地址:

  • a.jones@meonly.com
  • a.smith@youonly.net
  • AAPets.bark@why.org

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 05:14:58