Javascript 用document.getElementById(“某物”)替换document.all.something的正则表达式
我有很多旧的javascript文件是为和IE项目编写的,需要转换。它们使用Javascript 用document.getElementById(“某物”)替换document.all.something的正则表达式,javascript,regex,getelementbyid,Javascript,Regex,Getelementbyid,我有很多旧的javascript文件是为和IE项目编写的,需要转换。它们使用document.all.somename而不是document.getElementById(“somename”)。我一直在手动转换这些,我的手都抽筋了。有没有办法用正则表达式实现这一点?使用捕获组捕获somename部分 > "bar document.all.somename foo".replace(/\bdocument\.all\.(\w+)\b/g, 'document.getElementById
document.all.somename
而不是document.getElementById(“somename”)
。我一直在手动转换这些,我的手都抽筋了。有没有办法用正则表达式实现这一点?使用捕获组捕获somename
部分
> "bar document.all.somename foo".replace(/\bdocument\.all\.(\w+)\b/g, 'document.getElementById("$1")')
'bar document.getElementById("somename") foo'
沃特?这似乎不是一个编程问题。打开您最喜欢的文本编辑器并“查找并替换”。是的,有--您是否做过任何研究或尝试?什么环境/编辑器?如果名称只包含字母,则使用
[A-Za-z]+
而不是\w+
如果只有字母,则任何一种方法都可以。有些案例可能有数字或\uu
,所以他们应该使用\w+
以防万一。我可以使用这个。谢谢如何在文本编辑器(如textmate或monodevelop)中使用组和正则表达式?哦,我明白了。对于textmate,我刚才使用了find\b document\.all\.(\w+)\b正则表达式和指定的替换,效果非常好。谢谢