Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Как заэкранировать $ в регулярным выражением?
Если убрать знак доллара в account balance, то выражение работает.
Как заэкранировать знак доллара в регулярном выражении?
LIME
Отправлено: 26 Июля, 2012 - 12:25:36
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
он экранирован у тебя
возможно ты зря указал ^ в символьном классе ([^])
внутри [] это отрицание а не начало
EuGen
Отправлено: 26 Июля, 2012 - 12:25:55
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
mixey2011
preg_quote
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
LIME
Отправлено: 26 Июля, 2012 - 12:28:47
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
EuGen зачем?
заэкранирует все символы
не тот случай
mixey2011
Отправлено: 26 Июля, 2012 - 12:39:34
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Окт. 2011
Помог: 0 раз(а)
LIME пишет:
он экранирован у тебя
возможно ты зря указал ^ в символьном классе ([^])
внутри [] это отрицание а не начало
Убрал ^ . При запуске скрипта выводится на экран $.
Как можно сделать так, чтобы из текста: Account balance $5.12 выводилось только 5.12 (при этом это цифровое значение может меняться)?
LIME
Отправлено: 26 Июля, 2012 - 12:42:51
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
preg_match("#Account balance \$([\d.]+)#",$str,$mas); (Добавление)
если в центах только 2 цифры всегда то так
preg_match("#Account balance \$(\d+\.\d{2})#",$str,$mas);
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.