Литералы "или" в регулярных выражениях

Avenus

Under Glory Yield
Активист, спасибо. Я раньше неправильно понимал "конец строки"... считал, что конец в искомой строке, а не перенос на другую :)

-~{}~ 15.01.10 06:22:

У тебя не регулярное выражение preg, а хрень какая-то, которая еще где-то обрабатывается.
Ну не у меня, а в codeigniter :)

-~{}~ 15.01.10 06:24:

В общем, я понял. Просто получается, что правила в CI не работают, т.к. немного по-другому регулярные выражения требуется задавать.
 

Активист

Активист
Команда форума
ДА, попробуй так

> не будет работать, хоть и написал Активист
Это у тебя не будет работать , а вообще...

if (preg_match"/(^(main|sub|ext))/", "main_module")) {
echo "Работает";
}

Разница лишь в том, что здесь ты ловишь всю строку, и передаешь ее дальше на обработку, а мы говорили о захывате строки.

И правильнее будет вот так
PHP:
$route['(^(?:main|sub|ext).*)']='$1';
-~{}~ 15.01.10 11:30:

Да , ты спрашивал про зачем скобки - это маски захвата (или как их там) - тоже хорошо описано в доках.
 

Активист

Активист
Команда форума
> что конец в искомой строке, а не перенос на другую
Символ $ интерпритируется так и так, в зависимости от установленного модификатора s
 
Сверху