use*_*450 1 javascript regex firefox google-chrome
我无法弄清楚这个javascript在Firefox 7.0.1和谷歌Chrome 14.0.835.202中发生的奇怪之处(我还没有测试过任何其他版本).为什么除了加号(),破折号()和句点()之外还/[+-.]/g匹配逗号()?,+-.
// Firebug
>>> "Hello, World++--..".match(/[+-.]/g);
[",", "+", "+", "-", "-", ".", "."]
>>> "Hello, World".match(/[+-.]/g);
[","]
// Chrome Developer Tools:
> "Hello, World++--..".match(/[+-.]/g);
[",", "+", "+", "-", "-", ".", "."]
> "Hello, World".match(/[+-.]/g);
[","]
Run Code Online (Sandbox Code Playgroud)
好吧,也许我需要逃避这段时间(.)
// Firebug
>>> "Hello, World!".match(/[+-\.]/g);
[","]
// Chrome Developer Tools
> "Hello, World!".match(/[+-\.]/g);
[","]
Run Code Online (Sandbox Code Playgroud)
不.但是如果我改变了plus(+)和dash(-)的顺序,它就会停止匹配逗号(,).
// Firebug
>>> "Hello, World".match(/[-+.]/g);
null
// Chrome Developer Tools
> "Hello, World".match(/[-+.]/g);
null
Run Code Online (Sandbox Code Playgroud)
这对我来说毫无意义.Firefox和Chrome都会分享同样的正则表达式错误,这似乎很奇怪.有谁知道这是为什么?
| 归档时间: |
|
| 查看次数: |
225 次 |
| 最近记录: |