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

如何在BigQuery中用Regex匹配全名+6位数字+Gmail的客户邮箱?

在BigQuery中匹配指定格式Gmail邮箱的正则实现

核心思路

你需要匹配的邮箱结构为:去除空格并小写的客户全名 + 6位随机数字 + @gmail.com域名。最准确的方式是结合客户姓名字段动态构造正则,确保邮箱前缀与对应姓名严格匹配。

具体查询语句

SELECT 
  name,
  email
FROM 
  `你的项目ID.你的数据集ID.Customers`
WHERE 
  REGEXP_MATCH(
    email,
    CONCAT('^', LOWER(REPLACE(name, ' ', '')), '[0-9]{6}@gmail\\.com$')
  )

代码说明

  • LOWER(REPLACE(name, ' ', '')):将客户姓名去除空格并转为小写,得到与邮箱前缀前半段一致的字符串
  • CONCAT(...):拼接生成完整正则模式:
    • ^:匹配邮箱开头
    • [0-9]{6}:匹配连续6位数字
    • @gmail\.com$:匹配固定域名,且$确保邮箱结尾无多余字符
  • REGEXP_MATCH:验证邮箱是否完全符合构造的正则模式

补充:单纯匹配格式(不关联姓名)

如果不需要关联姓名,仅匹配「小写字母串+6位数字+Gmail域名」的邮箱,可使用以下正则:

SELECT 
  name,
  email
FROM 
  `你的项目ID.你的数据集ID.Customers`
WHERE 
  REGEXP_MATCH(email, '^[a-z]+[0-9]{6}@gmail\\.com$')

注意:这种方式可能会匹配到与姓名无关的邮箱,仅建议在无需关联姓名场景使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 18:55:24