parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Re: от меня

Spearance 22.08.2003 13:01

Начнем с первого правила
$str[^str.match[<script>(.+)</script>][g]{$match.1}]
Его можно записать кучей способов и приведенным выше тоже, а
можно еще несколько упростить вариант (или усложнить, кому как)
$str[^str.match[<(script>)(.+?)</\1][g]{$match.2}]
можно еще вместо .+? использовать \w+? если уверены что содержимое будет текст.

Второе правило
$str[^str.match[([a-z-]+)'([a-z]{1,2} )][gi]{$match.1 }]
Конструкцию [a-z-]+ можно смело заменить на \w+, а [a-z]{1,2} на \w{1,2} тогда отпадет необходимость в параметре поиска i
И еще, чтобы не проверять пробел после [a-z]{1,2} можно поставить границу слова - \b. Потому как после этого слова может быть и пробел и точка и запятая и т.д. В итоге имеем:
$str[^str.match[(\w+)'(\w{1,2}\b)][g]{$match.1}]
Под финал, не очень понятно что хотелось получить в итоге, потому как данное правило на слово don't вернет don.