代码之家  ›  专栏  ›  技术社区  ›  b-ryce

正则表达式:检查第一个字符并匹配

  •  0
  • b-ryce  · 技术社区  · 6 年前

    我正在处理一个正则表达式电子邮件验证任务,它工作得非常好。我可以根据要求的所有标准进行匹配。以下是我目前的模式:

    ^([a-zA-Z0-9.\-\_\+]+)@([a-zA-Z0-9.\-\_\+]+)$
    

    我还想检查一下 带有字母字符。所以我改变了我的模式:

    ^[a-zA-Z]([a-zA-Z0-9.\-\_\+]+)@([a-zA-Z0-9.\-\_\+]+)$
    

    这很好,只在第一个字符是字母时产生匹配。 但是 ,生成的匹配项将截断第一个字符。例如,如果我尝试: Billy@bobby.com

    请参见此处正在运行的正则表达式: https://pythex.org/?regex=%5E%5Ba-zA-Z%5D(%5Ba-zA-Z0-9.%5C-%5C_%5C%2B%5D%2B)%40(%5Ba-zA-Z0-9.%5C-%5C_%5C%2B%5D%2B)%24&test_string=b2ill..%2B..DSD_y.23%40bobby.com&ignorecase=0&multiline=0&dotall=0&verbose=0

    0 回复  |  直到 6 年前
        1
  •  -1
  •   b-ryce    6 年前

    ^([a-zA-Z][a-zA-Z0-9.-++])@([a-zA-Z0-9.-++]+[a-zA-Z])$