当前位置:  开发笔记 > 编程语言 > 正文

Javascript - MultiLine RegExp:lastIndex卡在换行符上?

如何解决《Javascript-MultiLineRegExp:lastIndex卡在换行符上?》经验,为你挑选了1个好方法。

问题在于点

^(.*)$

与新行字符不匹配,但使用您的"m"开关制作"^""$"锚定到新行字符.这意味着之间的"一无所有" "\n",并"\n"可以与匹配成功"(.*)".

由于此匹配的宽度为零,因此该lastIndex属性无法前进.尝试:

^(.+)$

编辑:要匹配空白行,请执行以下操作:

^(.*)\n?     // remove all \r characters beforehand

要么

^(.*)(?:\r\n|\n\r|\n|\r)?  // all possible CR/LF combinations, but *once* at most

......然后去比赛组1.



1> Tomalak..:

问题在于点

^(.*)$

与新行字符不匹配,但使用您的"m"开关制作"^""$"锚定到新行字符.这意味着之间的"一无所有" "\n",并"\n"可以与匹配成功"(.*)".

由于此匹配的宽度为零,因此该lastIndex属性无法前进.尝试:

^(.+)$

编辑:要匹配空白行,请执行以下操作:

^(.*)\n?     // remove all \r characters beforehand

要么

^(.*)(?:\r\n|\n\r|\n|\r)?  // all possible CR/LF combinations, but *once* at most

......然后去比赛组1.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有