Помогите с регулярным выражением

  • Автор темы Автор темы tche
  • Дата начала Дата начала
Yukko, откуда ты это взял (насчет возвратов?)
Цитата (http://ru2.php.net/manual/en/pcre.pattern.syntax.php):
By default, the quantifiers are "greedy", that is, they match as much as possible (up to the maximum number of permitted times), without causing the rest of the pattern to fail. The classic example of where this gives problems is in trying to match comments in C programs. These appear between the sequences /* and */ and within the sequence, individual * and / characters may appear. An attempt to match C comments by applying the pattern
/\*.*\*/
to the string
/* first command */ not comment /* second comment */
fails, because it matches the entire string due to the greediness of the .* item. However, if a quantifier is followed by a question mark, then it ceases to be greedy, and instead matches the minimum number of times possible[bb], so the pattern
/\*.*?\*/
does the right thing with the C comments. The meaning of the various quantifiers is not otherwise changed, just the preferred number of matches.

U делает тоже самое, что и *?, но только к одному повторителю, при этом если стоит модификатор U, то его действие инвертируется

PS. Глюк оперы исправил ручками, блин
 
Demiurg
я и сам знаю... :)

Profic
я читал мануал... только ты РВ воспринимаешь с точки зрения использования в РНР и пользуешься модификатором, а мне проще понять общую теорию и пользоваться при необходимости подобными конструкциями .*? (абсолютно тоже самое).

откуда ты это взял
Фридл.
 
Кто сказал, что я пользуюсь модификатором?
Та дока, которая есть в пхп, есть не что иное как дока по либе PCRE и имеет только один один аспект применимый только к PHP - модификатор e для preg_replace. Я бы не говорил, что пользуюсь РВ только в PHP :) SQL, shell, С в конце концов, да и просто редакторы текста, везде есть РВ :)

Фридла не читал, но не думаю, что у него сильно отличается описание жадности от того, что дано в мануале к PCRE %)
 
Сверху