javascript regexp惊喜

时间:2017-03-13 02:42:44

标签: javascript regex perl

我在Chrome的开发者控制台中尝试了以下JavaScript:

s = "mysessionId=PsGymRfxWIQG9gjNGgRlKw"
s.match("mysessionId=([^\s\;]+)")

结果有点意外:

["mysessionId=P", "P"]

我原本期望regexp中的()匹配整个“PsGymRfxWIQG9gjNGgRlKw”,相反,它只匹配第一个字符“P”。

当我在perl中尝试使用regexp时,它确实与整个sessionId匹配。

知道为什么吗?

1 个答案:

答案 0 :(得分:-1)

我应该使用//而不是""。

s.match(/mysessionId=([^\s\;]+)/)

当我想出来时,不得不笑。