2010-07-23 3 views
0

Я надеюсь, что кто-то может помочь мне с этим регулярным выражением, мне нужно, чтобы захватить test2 and everything between { }захватить значение CSS с Regex

.test1 {font-family: Arial, Helvetica, sans-serif; color: #42bf32; font-size: 14px; } 
.test2 {font-family: Arial, Helvetica, sans-serif; color: #42bf32; font-size: 14px; } 
.test3 {font-family: Arial, Helvetica, sans-serif; color: #42bf32; font-size: 14px; } 

Я использую ASP и Javascript

У меня есть ощущение регулярного выражения будет что-то вроде этого test2.replace(/\.test(.*?)\{(.*?)\}/ig, '.test3');

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

спасибо к Стюард сейчас работает отлично .replace(/.test *{[^}]*/ig, '');

+2

Почему вы пытаетесь захватить css с regex? вероятно, лучшее решение для того, что вы делаете, а затем использовать регулярное выражение. – vol7ron

ответ

2
test2[[:space:]]*{[^}]*} 

Но вместо этого вы должны использовать настоящий css-синтаксис.

+0

Спасибо Стюарту, я запустил ut для .replace (/. Test * {[^}] */ig, ''); но он оставляет последний} в коде. любая идея почему? –

+0

lol wait Я думаю, что вижу, что я сделал неправильно .replace (/. Test * {[^}] *}/ig, ''); позвольте мне попробовать его вот так: –

+0

Вы можете отформатировать свой код, отстудив его на 4 пробела (при редактировании ответа посмотрите на поле справа). –

1
/\.test2\s*\{.*\}/ 

Вы также можете посмотреть на другие RegExp методы, replace не может быть то, что вы хотите. В частности, вы должны проверить test() и exec(). См. Javascript Kit's Regex Tutorial.

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