我正在尝试使用以下正则表达式方式在JavaScript代码中查找循环模式,并替换语法(从:到in),
var str="for(var x in []) for(var y in [])";
str.replace( new RegExp( '(for\\s*\\(.+\\s+):(\\s+.+\\))', 'ig' ), "\$1in\$2" )
IE
for(var x : list)
{
// something
}
和
for(var x in list)
{
// something
}
但是,当同一行中有多个for循环时,我会遇到问题。
for(var x : list) { for(var y : list) {
// something
}
}
这是有效的语法,但是由于贪婪的正则表达式方法,其转换如下:
for(var x : list) { for(var y in list) {
// something
}
}
我试图探索懒惰的正则表达式语法,但无法使其正常工作。我怎样才能做到这一点?
qq_遁去的一_1
倚天杖
aluckdog
相关分类