$zahvat=preg_replace('/^[0-9]+$/','<br>',$zahvat);
Но оно не работает.
А в варианте:
$zahvat=preg_replace('/[0-9]+/','<br>',$zahvat);
как и положено радостно удаляет вообще все цифры, которые видит.
Что не так-то?
Спустя 7 минут, 59 секунд (19.04.2011 - 17:24) ZSH написал(а):
Спустя 6 минут, 6 секунд (19.04.2011 - 17:30) Trianon написал(а):
rbarom
что значит не работает?
$zahvat='987654321';
$zahvat=preg_replace('/^[0-9]+$/','<br>',$zahvat);
echo $zahvat;
что выводит?
что значит не работает?
$zahvat='987654321';
$zahvat=preg_replace('/^[0-9]+$/','<br>',$zahvat);
echo $zahvat;
что выводит?
Спустя 3 минуты, 6 секунд (19.04.2011 - 17:33) rbarom написал(а):
Цитата (ZSH @ 19.04.2011 - 14:24) |
модификаторы $zahvat=preg_replace('/^[0-9]+$/m','<br>',$zahvat); |
Вот вроде по ссылке моя проблема решается. А код продолжает не работать.
Спустя 2 минуты, 21 секунда (19.04.2011 - 17:35) rbarom написал(а):
Цитата (Trianon @ 19.04.2011 - 14:30) |
rbarom что значит не работает? $zahvat='987654321'; $zahvat=preg_replace('/^[0-9]+$/','<br>',$zahvat); echo $zahvat; что выводит? |
br выводит. Но у меня из формы забирается текст, состоящий сильно больше, чем из одной строчки. Подозреваю, что проблема именно в этом.
Спустя 17 минут, 35 секунд (19.04.2011 - 17:53) Trianon написал(а):
вот и привели бы пример такого текста.
Спустя 8 минут, 36 секунд (19.04.2011 - 18:02) rbarom написал(а):
Цитата (Trianon @ 19.04.2011 - 14:53) |
вот и привели бы пример такого текста. |
горячая линия 8 800
499
горячие линии 8 800
499
8 800 2000
474
8 800 тарифы
451
звонок +на 8 800
448
8 800 +с мобильного
Спустя 35 минут, 52 секунды (19.04.2011 - 18:37) Dr.Mars написал(а):
/^[0-9]+(?:\\n|$)/
ваш кеп
ваш кеп
Спустя 16 минут, 40 секунд (19.04.2011 - 18:54) rbarom написал(а):
Цитата (Dr.Mars @ 19.04.2011 - 19:37) |
/^[0-9]+(?:\\n|$)/ ваш кеп ;) |
Мне это уже начинает казаться мистикой, но так тоже не работает. И в варианте
/^[0-9]+(?:\\n|$)/m
тоже.
Может там дело в разделителях? Скрипт же забирает из формы весь введенный текст в единую строку $zahvat. Но в самом-то вставленном в форму тексте много строчек. Как php распознает из разделители в таком случае? Мне просто кажется, что на варианты $, \n и ^ он не реагирует. Хотя вроде бы должен...
Спустя 41 минута, 23 секунды (19.04.2011 - 19:36) Dr.Mars написал(а):
попробуй так
/^[^a-zA-Zа-яА-ЯёЁ]+$/m
/^[^a-zA-Zа-яА-ЯёЁ]+$/m
Спустя 28 минут, 18 секунд (19.04.2011 - 20:04) rbarom написал(а):
Цитата (Dr.Mars @ 19.04.2011 - 20:36) |
попробуй так /^[^a-zA-Zа-яА-ЯёЁ]+$/m |
Ура! Оно работает!
Огромное спасибо. Теперь буду знать, что в таких случаях полезно попробовать пойти от обратного.
Спустя 1 минута, 34 секунды (19.04.2011 - 20:05) Dr.Mars написал(а):
Спустя 15 часов, 18 минут, 22 секунды (20.04.2011 - 11:24) Ulan написал(а):
судя по всему из формы приходят строки с windows окончанием строки \r\n
потому '/^[0-9]+$/m' не правильно работает.
вот так должно находить все '/^[0-9]+[\r]?$/m'
/^[^a-zA-Zа-яА-ЯёЁ]+$/m этот шаблон более 'жадный', и захватит также помимо цифр, все строки не содержащие букв, например смайлик : )
потому '/^[0-9]+$/m' не правильно работает.
вот так должно находить все '/^[0-9]+[\r]?$/m'
/^[^a-zA-Zа-яА-ЯёЁ]+$/m этот шаблон более 'жадный', и захватит также помимо цифр, все строки не содержащие букв, например смайлик : )