leo*_*eon 2 javascript regex global exec
为什么下面的代码只给我“abc”而不是“abc\nef”?正则表达式如何处理新行?谢谢。
var input = "abc\nef",
pattern = /.*/g,
result = pattern.exec(input),
i = 0;
for (i = 0; i < result.length; i++) {
console.log(result[i]);
}
Run Code Online (Sandbox Code Playgroud)
在 Javascript 中,您需要使用它[\s\S]来匹配任何字符(包括换行符),因为点不匹配换行符,并且 Javascript 没有s(DOTALL) 正则表达式开关。
所以如果你使用:
/[\s\S]*/.exec("abc\nef");
Run Code Online (Sandbox Code Playgroud)
你会得到:
["abc
ef"]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
105 次 |
| 最近记录: |