В тексте могут встречаться символы rn{цифры} или gn{цифры}
например :
"У нас новый товар gn{755} покупайте"
нужно вытащить код 755,для передачи в функцию замены спецсимволов на название.Каким образом это можно сделать?
Спустя 10 минут, 23 секунды (22.01.2009 - 10:25) kirik написал(а):
wolfgang-abersdorf, нужно использовать регулярные выражения. Нужно что-то типа этого?
PHP |
$str = 'У нас новый товар gn{755} покупайте |
Спустя 9 минут, 26 секунд (22.01.2009 - 10:34) wolfgang-abersdorf написал(а):
kirik
Спасибо! Полчаса парился с составлением шаблона для регулярного выражения.
Не подскажешь где можно найти подробный справочник по операторам регулярных выражений?
Спасибо! Полчаса парился с составлением шаблона для регулярного выражения.
Не подскажешь где можно найти подробный справочник по операторам регулярных выражений?
Спустя 1 час, 9 минут, 33 секунды (22.01.2009 - 11:44) Sylex написал(а):
данный пример вытащит ВСЕ числа, если будут
Спустя 2 часа, 43 минуты, 45 секунд (22.01.2009 - 14:27) twin написал(а):
Цитата |
данный пример вытащит ВСЕ числа, если будут |
Вернее, он вытащит все числа в фигурных скобках. Для более корректного поиска лучше избегать таких возможных казусов:
PHP |
preg_match_all('/\s[a-z]{1,2}{(\d+?)}/', $str, $matches); |
Спустя 3 часа, 49 минут, 22 секунды (22.01.2009 - 18:17) Sylex написал(а):
twin
точно
точно
Спустя 1 час, 33 минуты, 18 секунд (22.01.2009 - 19:50) kirik написал(а):
Цитата (Sylex @ 22.01.2009 - 03:44) |
данный пример вытащит ВСЕ числа, если будут |
Насколько я понял, автору требуется вытащить всё число из скобок, потому что оно является id-шником какой-то записи в БД /* или не БД */. =)
Цитата (wolfgang-abersdorf @ 22.01.2009 - 02:34) |
Не подскажешь где можно найти подробный справочник по операторам регулярных выражений? |
Я использую иногда эту шпаргалку =)
Спустя 5 минут, 26 секунд (22.01.2009 - 19:55) twin написал(а):
Вы правильно поняли, только задача решена не в полном объёме. Ваш вариант вытащит ВСЕ комбинации скобка-цифры-скобка. А автору нужны числа из комбинаций буква(или две)-скобка-цифры-скобка.
Спустя 7 минут, 50 секунд (22.01.2009 - 20:03) kirik написал(а):
Цитата (twin @ 22.01.2009 - 11:55) |
А автору нужны числа из комбинаций буква(или две)-скобка-цифры-скобка. |
Каюсь. Был не прав =)
Спустя 16 часов, 43 минуты, 17 секунд (23.01.2009 - 12:47) wolfgang-abersdorf написал(а):
Спасибо! Cпасибо всем за множество советов.
Автор конечно ламер но не полный.
/rn{(\d+)}/ и /gn{(\d+)}/ дописать уж сообразил)))
Теперь думаю как использовать preg_replace_callback() для замены {435} на значение соответствующее id в БД
Автор конечно ламер но не полный.
/rn{(\d+)}/ и /gn{(\d+)}/ дописать уж сообразил)))
Теперь думаю как использовать preg_replace_callback() для замены {435} на значение соответствующее id в БД
Спустя 25 минут, 58 секунд (23.01.2009 - 13:12) twin написал(а):
PHP |
function replac($a) |
Спустя 17 минут, 43 секунды (23.01.2009 - 13:30) wolfgang-abersdorf написал(а):
Ваще спасибо теперь
Спустя 11 часов, 24 минуты, 17 секунд (24.01.2009 - 00:54) Lumos написал(а):
Цитата (wolfgang-abersdorf @ 22.01.2009 - 07:34) |
kirik Спасибо! Полчаса парился с составлением шаблона для регулярного выражения. Не подскажешь где можно найти подробный справочник по операторам регулярных выражений? |
Я бы посоветовал в придачу ещё и эту программу The Regulator 2.0, позволяющая составлять и тестировать регулярные выражения. Реально поможет как профи, желающим сэкономить время, так и новичкам, которым нужно освоиться с довольно сложным приемом программирования. Есть функция поиска нужного regexp'а в Интернете.
http://regex.osherove.com/