2015-03-04 1 views
-1

У меня есть много старых файлов javascript, написанных для проекта IE, которые мне нужно преобразовать. Они используют document.all.somename вместо document.getElementById("somename"). Я вручную конвертировал их, и мои руки сжались. Есть ли способ сделать это с помощью регулярных выражений?регулярное выражение для замены document.all.something с document.getElementById ("something")

+0

Wat? Это, похоже, не вопрос программирования. Откройте ваш любимый текстовый редактор и «найдите и замените». – nicael

+0

Да, есть - вы вообще проводили какие-либо исследования или делали какие-либо попытки? –

+0

Какая среда/редактор? –

ответ

2

Используйте группу захвата, чтобы захватить часть somename.

> "bar document.all.somename foo".replace(/\bdocument\.all\.(\w+)\b/g, 'document.getElementById("$1")') 
'bar document.getElementById("somename") foo' 
+0

, если имя содержит только алфавиты, тогда используйте '[A-Za-z] +' вместо '\ w +' –

+0

Если есть только буквенные символы, то в любом случае это будет работать. В некоторых случаях могут быть цифры или '_', поэтому они должны использовать' \ w + 'на всякий случай. –

+0

Я мог бы использовать это. Благодарю. Как использовать группу и регулярные выражения в текстовом редакторе, например textmate или monodevelop? – techdog

Смежные вопросы