Я начал иметь руки с регулярными выражениями в PHP и застрял в начале.PHP регулярное выражение странное поведение
Я написал следующий блок: -
$object = "ng_amg_gt-1";
switch ($object)
{
case preg_match('/^ng_amg_gt-[0-9]+$/', $object):
echo 'first';
break;
case preg_match('/^ng_amg_gt-_cg-[0-9]+$/', $object):
echo 'second';
break;
}
я думал "ng_amg_gt-1" будет соответствовать preg_match ('/^ng_amg_gt- [0-9] + $ /', $ объекта), но что интересно (анонимно), это эхо второй.
Что мне не хватает?
PS: - Это может показаться очевидным вопросом, но не получить никакого прорыва, вот почему я разместил его здесь.
Благодаря
preg_match возвращает Int, вы делаете коммутатор на строка, и я даже не знаю, действительно ли это. Просто сделайте 'if (preg_match (...))' – tigrang
oh НЕТ, я сделал ошибку, Извинения –
Посмотрите на http://stackoverflow.com/a/4046018/372239 – Toto