|
|
|
|
<?
function author($text)
{
$text = trim($text);
$text = preg_replace("/^[^a-zA_Zа-яА-ЯЁё0-9\_\-\s]{1,25}$/", "", $text);
return $text;
}
echo author("!@#My **&*name is}'?:>{ Author^&*(");
|
Выводит : !@#My **&*name is}"?:>{ Author^&*(
хотя должно - My name is Author
В чем дело? (тестирую на денвере) | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 17:07)
| | не работает потому, что Вы допустили ошибки, составляя РВ | |
|
|
|
|
|
|
|
для: Slo_Nik
(11.09.2010 в 17:40)
| | Какую ошибку?
Проверять всю строку. Все, что не в квадратных скобках - заменить на пустоту... | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 17:48)
| | >Какую ошибку?
а вот эту A_Z...
да и подчёркивание с тире не надо экранировать, и тире поставить в самое начало, для удобства.
уберите "^" и "$" и всё должно работать
а вообще то, я бы попробовал сделать массив запрещённых символов и проверял бы его, если есть такой символ в строке, то замена.
Вот Вы составили РВ, не работает, сразу на форум... а самому посидеть, поковырять разве не интересно? | |
|
|
|
|
|
|
|
для: Slo_Nik
(11.09.2010 в 17:59)
| | Спасибо. Помогло.
Только я не пойму, почему следовало убрать "начало" и "конец" строки?
>>а вообще то, я бы попробовал сделать массив запрещённых символов и проверял бы его, если есть такой символ в строке, то замена
Смысл в этом какой?
>>а самому посидеть
3 часа хватит? | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 18:05)
| | >3 часа хватит?
мало, очень мало... даже не простительно мало. | |
|
|
|
|
|
|
|
для: Slo_Nik
(11.09.2010 в 18:17)
| | Сарказм? для такой несложной задачи 3 часа - это уже смахивает на отключенный мозг, либо на невнимательность (как у меня). | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 18:28)
| | Не, он дело говорит. Я сам когда-то, бывало, над чем нибудь таким целый день сидел, ложился спать - и тогда обычно доходило. Если сам будешь додумываться до всего - то хоть будешь все это понимать. | |
|
|
|
|
|
|
|
для: Slo_Nik
(11.09.2010 в 17:59)
| | можно еще например упростить, убрав большие буквы из классов символов и поставив регистронезависимый поиск | |
|
|
|