gpt4 book ai didi

javascript - 正则表达式问题模式不起作用

转载 作者:行者123 更新时间:2023-11-29 15:14:15 25 4
gpt4 key购买 nike

我有一个正则表达式,它只接受具有以下模式的电子邮件。

@stanford.edu.uk 或 word.edu.word

在这里

/(\.edu\.\w\w\w?)$/

这似乎仅在 .edu 后跟“.xx”时有效(例如:school.edu.au 或 college.edu.uk)。我需要它也适用于以 .edu 结尾的电子邮件(例如:school.edu 或 student.college.edu)

我试过这个:

/(\.w+\.w+\.edu)$/

谁能帮忙?

最佳答案

您的 (\.edu\.\w\w\w?)$ 模式需要一个 . 并且在它之后的 2 到 3 个字符处字符串,因此它无法匹配末尾带有 .edu 的字符串。

您可以使用

修复模式
\.edu(?:\.\w{2,3})?$

参见 regex demo

详情

  • \.edu - .edu 子串
  • (?:\.\w{2,3})? - 可选的非捕获组匹配 1 次或 0 次出现
    • \. - 一个点
    • \w{2,3} - 2 到 3 个字符
  • $ - 字符串结尾。

注意 \w 匹配字母、数字和 _。如果您只想匹配字母([a-zA-Z] 以仅处理 ASCII,或使用 ECMAScript 2018 支持的 \p{L},您可能需要精确此位code> Unicode 属性类(不适用于旧浏览器),或构建您自己的 pattern to support all Unicode letters )。

另外,考虑通过 How to validate an email address using a regular expression?

关于javascript - 正则表达式问题模式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50941566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com