有人可以解释这个正则表达式

时间:2009-09-03 18:30:42

标签: regex

我知道这是一个非常基本的正则表达式,有人可以解释它在做什么吗?

^[^@]+@[-a-z0-9.]+$

5 个答案:

答案 0 :(得分:9)

^ - 匹配字符串的开头

[^ @] + - 匹配一个或多个不是@

的字符

@ - 匹配@

[ - a-z0-9。] + - 匹配集合' - '中的一个或多个字符,小写'a' - 'z',数字'0' - '9','。'< / p>

$ - 匹配字符串结尾

因此,匹配任何字符串,其中包含一些不是'@'的字符,后跟'@',后跟一些小写字母/数字/短划线/句号。

答案 1 :(得分:5)

我认为它正在尝试匹配电子邮件地址(不太好)

示例匹配:

  • abc@example.com
  • podcast@nospam.com
  • hello(world)@9
  • a[]&^&£^$^&£@.

答案 2 :(得分:2)

它表示“匹配一个或多个非@字符后跟 @ ,然后是一个或多个字母数字字符,a - 或a。< / strong>“开头的 ^ 和结尾的 $ 表示此模式也必须是整个字符串的开头和结尾(^表示”开头“ string“和$表示”字符串结束“)。

答案 3 :(得分:1)

匹配一个不以至少1 @个字符开头的字符串,然后匹配@,然后匹配-.或任何字母数字字符至少一次。

我猜这是一个非常松散的电子邮件验证工具。

答案 4 :(得分:0)

为了扩展Rex的答案,它看起来像一个天真的电子邮件验证正则表达式。