|
|
|
| Всем привет! Уважаемые знатоки, вопрос к Вам.
Необходимо удалить всё кроме букв, цифр, пробела,точки, запятой, дефиса, двоеточия,слеша и скобок. Написал патерн.
$str = ereg_replace("[^a-zA-Zа-яА-Я0-9\., \(\)-:]", "", $str);
|
Всё работает, только не заменяет * + \
Помогите пожалуйста корректно составить выражение | |
|
|
|
|
|
|
|
для: slaventy
(18.02.2009 в 10:18)
| | >Всё работает, только не заменяет * + \
Попробуйте модифицировать регулярное выражение следующим образом
$str = ereg_replace("[^a-zA-Zа-яА-Я0-9\.,\*\+ \(\)-:\\]", "", $str);
|
| |
|
|
|
|
|
|
|
для: cheops
(18.02.2009 в 14:59)
| | Так не получится, причем вы вкладывая эти символы в диапазон, наоборот указываете, что они не должны заменяться.
Всё работает, только не заменяет * + \
Подойдет такое решение
$str = ereg_replace("[^-a-zA-Zа-яА-ЯёЁ0-9\., \(\):]", "", $str);
|
| |
|
|
|
|
|
|
|
для: AcidTrash
(18.02.2009 в 20:54)
| | Диапазон отрицательный. | |
|
|
|
|
|
|
|
для: cheops
(19.02.2009 в 11:59)
| | Диапазон отрицательный.
В том то и дело, что если бы он был положительный, то перечисленные в нем символы должны заменяться. А так как он отрицательный, то идет перечисление символов, которые не должны заменяться.
Т.е. под вопрос автора
Всё работает, только не заменяет * + \
Это не подойдет, т.к. ему их тоже надо заменять. | |
|
|
|
|
|
|
|
для: AcidTrash
(18.02.2009 в 20:54)
| | О, спасибо. Всё работает, только не удаляется \ , а удаляется /. А нужно наоборот | |
|
|
|
|
|
|
|
для: slaventy
(19.02.2009 в 13:56)
| |
$str = ereg_replace("[^-a-zA-Zа-яА-ЯёЁ0-9/., ():]", "", $str);
|
| |
|
|
|
|
|
|
|
для: AcidTrash
(19.02.2009 в 14:12)
| | Работает! Спасибо за помощь. | |
|
|
|