帮助关于此正则表达式的结果

时间:2011-08-01 11:46:56

标签: regex

 var pat = /(^[\w\.\+\-=]+@[\w\.\-]+\.[\w\-]+$)/g

我想将其用作电子邮件验证工具..我在论坛中找到了它。

但我不知道^ / g和正斜杠和结构/(*)/ g?

。+ - =这代表什么?

3 个答案:

答案 0 :(得分:1)

^是字符串开头的锚点。

/是正则表达式分隔符。

g全局模式修饰符

答案 1 :(得分:1)

“g”代表“global”,它告诉Perl替换所有匹配,而不仅仅是第一个匹配。通常指示选项包括斜杠,如“/ g”,即使您没有添加额外的斜杠,即使您可以使用任何非单词字符而不是斜杠。

示例:

s/cat/dog/g 

<动物园里有野狗,山猫,狮子和其他野猫。

所有猫将被狗取代

  

动物园里有野狗,山猫,狮子和其他野狗。

答案 2 :(得分:1)

你的模式

/(^[\w\.\+\-=]+@[\w\.\-]+\.[\w\-]+$)/g

包含这些元素:

/ ... /正则表达式模式分隔符

这里的{p> / ... /g正则表达式模式修饰符g全局模式==>匹配所有出现次数

^锚定字符串的开头,强制模式与字符串的开头匹配。

$锚定字符串的结尾

[]方括号定义一个字符类,即此构造匹配此类中包含的字符的一个字符。 [\w\.\+\-=]匹配字词或. + - =
在这样的角色类中,您不需要逃避大多数角色。因此[\w.+\-=]具有相同的含义(还有[\w.+=-]

\w是一个单词字符,取决于你的正则表达式引擎,但至少是a-zA-Z0-9和_

+表示至少匹配前一部分一次,[\w\.\+\-=]+匹配例如“Foobar”,“++++ =”,“。”,“.Foo = 098 + - ”< / p>

有几种用于正则表达式的在线测试工具。 See your regex for example here on Regexr