2013-04-09 4 views
1

Я хотел бы удалить сотни событий onmouseover из моего кода. evt все передает разные переменные, и я хочу, чтобы иметь возможность использовать dreamwaever, чтобы найти и заменить все строки ничем.Соответствие любому регулярному выражению Word

Вот пример

onmouseover="parent.mv_mapTipOver(evt,'Wilson');" 
onmouseover="parent.mv_mapTipOver(evt,'Harris');" 
onmouseover="parent.mv_mapTipOver(evt,'Walker');" 

Я хочу, чтобы запустить поиск, который будет идентифицировать все эти и заменить/удалить их.

Я попытался, казалось бы, бесконечные перестановки вещей, как:

onmouseover="parent.mv_mapTipOver(evt,'[^']');" 

или

onmouseover="parent.mv_mapTipOver(evt,'[^']);" 

или

onmouseover="parent.mv_mapTipOver(evt,[^']);" 

или

onmouseover="parent.mv_mapTipOver(evt,'[^']+');" 

И многое другое. Я не могу найти регулярное выражение, которое будет работать.

Любая помощь будет оценена по достоинству.

Спасибо тонну!

ответ

2

"." и «(» имеют особое значение в регулярных выражениях, так что вам нужно, чтобы избежать их:

onmouseover="parent\.mv_mapTipOver\(evt,'[^']+'\);" 

Я не уверен, если это правильный синтаксис регулярных выражений Dreamweaver, но этот материал достаточно стандартен.

+0

@MikeM: Ой. Глупо обо мне. Спасибо за примечание. Fixink ... – creinig

1

Попробуйте это:

onmouseover="parent\.mv_mapTipOver\(evt,'.+?'\);" 

И увидеть его в действии here.

+0

оба эти ответа верны. Я принял квининг ответ b/c, он немного подошел, + он объяснил, что это было полезно. Я оценил это – Jeremythuff

1

При использовании регистровых выражений вы должны быть очень осторожны с тем, как вы обрабатываете пробелы. Например, следующая часть кода не будет попадаться большинством выражений reg, упомянутых до сих пор, из-за пробела после запятой и знака равенства, несмотря на то, что это наиболее вероятный синтаксис на используемом вами языке.

onmouseover= "parent.mv_mapTipOver(evt, 'Walker');" 

Для того, чтобы создать регулярное выражение, что игнорировать пробелы необходимо вставить/с * везде в регулярном выражении, что может произойти белое пространство.

Следующее regexp должно работать, даже если в вашем коде есть дополнительное пространство.

onmouseover\s*=\s*"parent\.mv_mapTipOver\(\s*evt\s*,\s*'[A-Za-z]+'\s*\);" 
Смежные вопросы