js регулярное выражение и его жадность

Rin

*
js регулярное выражение и его жадность

В IE5.0 не работает регулярное выражение типа
/\d.*?\d/
Он выдает ошибку Unexpected quantifier
В мозилле 1.6 без ошибки, но не работает должным образом: рег. выражение "жадное".
Как сделать его не жадным?
Есть рецепты?
 

MD

Guest
если я правильно понял, то тебе нужно немного другое.
/\d[\d]*\d/
 

гоша

Guest
jscript поддерживает нежадность начиная с версии 5.5

попробуйте так: /\d\D*\d/
 

Rin

*
Спасибо всем за ответы.
Приведенное выше регулярное выражение я написал только для примера :) , а мой случай сложнее и интереснее.
Нужно было отрубать все лишние html-теги, которые не могут быть вложены друг в друга, например <a href...>, <b> и т.д..
Если бы javascript regexp поддерживал нежадность, то решалось бы одним рег. выражением. А так пришлось сделать дополнительные усилия, что бы решить проблему.

-~{}~ 30.03.04 15:16:

Я нашел способ переписать регулярное выражение на javascript, что бы оно было не "жадным"!

Например, рег. выражение типа
/<pre[^>]*>.*?<\/pre>/gi

(которое не работает в браузере)
можно представить как

/<pre[^>]*>([^<]*|([^<]*<([^\/]|\/([^p]|p([^r]|r[^e])))[^<]*)+)<\/pre>/gi
 
Сверху