regex - 针对 GSuite 内容合规性的正则表达式修复
问题描述
我有一个正则表达式,我正在尝试检查网络钓鱼电子邮件。
电子邮件如下:
Principal-joe smith <officeemailxyz@gmail.com>
我需要识别任何具有
principal*@gmail.com
或@hotmail.com
或的电子邮件@yahoo.com
。
这是我的正则表达式:
(\W|^)(?i)pr[i!1]nc[i!1]p[a@]l@(yahoo|hotmail|gmail)\.com(\W|$)
(\W|^)(?i)pr[i!1]nc[i!1]p[a@]l---WHAT DOES HERE---@(yahoo|hotmail|gmail)\.com(\W|$)
还是有更好的方法来做到这一点?
解决方案
首先,我认为您必须使用 option 使搜索不区分大小写/i
。如果我正确理解您的示例,那么您应该包含任何电子邮件地址有效字符加上空格。我进行了几次测试,以下似乎涵盖了所有情况。
/^[\w\s]*principal[\<+\s*a-zA-Z0-9._-]*?@[yahoo|hotmail|gmail]*\.com[\>]?$/gmi
推荐阅读
- python - 关闭无限异步生成器
- python - 附加数据文件(.csv、.json)作为要在 Dataflow 上使用的设置包的一部分
- haskell - 您如何找到仅是 2、3 和 5 的幂的倍数的所有数字的列表?
- python - Python numpy 数组索引在第 4 位出现舍入错误
- angular - src/app/products/product-list.component.ts(1,2) 中的错误:错误 TS1109:预期表达式
- c# - 发现无法解决的“ICSharpCode.SharpZipLib”不同版本之间的冲突
- javascript - Web Worker 响应缓慢
- javascript - 无法在鼠标悬停时隐藏/显示工作
- mysql - 插入选择多行
- angular - 用于角度上传的 Kendo 中的自定义拖放区