Помогите добавить скобки () в регулярку

Print RSS
382

Author
Пишу, строю и воображаю
0
Имеется такая регулярка, которая жестко фильтрует данные, оставляя только то что хочет админ.

<?php

	$title=preg_replace('/[^ ёйцукенгшщзхъфывапролджэячсмитьбюЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮa-zA-Z0-9,.!#№:;?=_-)«»@]/i',null,$_POST[title]);
?>

Но я хочу чтобы и скобки "()" не уходили с фильтрацией, как включить? просто ввод () выводит из строя регулярку, потому как знаю что скобки играют другую функциональную роль.

ЗАРАНЕЕ СПАСИБО!
Б

Оранжевые штаны
0
<?php 

    $title=preg_replace('/[^ ёйцукенгшщзхъфывапролджэячсмитьбюЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮa-zA-Z0-9,.!#№:;?=_-()«»@]/i',null,$_POST[title]); 
?> 
Author
Пишу, строю и воображаю
0
2, спасибо, я так пробовал)) после такого регулярка возвращает ПУСТОЕ значение(
Б

Оранжевые штаны
0
Странно, по идее в [] не должно срабатывать. Экранируй тогда скобки.
<?php 

    $title=preg_replace('/[^ ёйцукенгшщзхъфывапролджэячсмитьбюЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮa-zA-Z0-9,.!#№:;?=_-\(\)«»@]/i',null,$_POST[title]); 
?> 
Changed: Богдан (12.08.2013 / 23:02)
Author
Пишу, строю и воображаю
0
4, всё равно пустое значение приходит после регулярки
Б

Оранжевые штаны
0
Хз тогда, пк рядом нет что бы проверить.
У тебя кстати может быть проблема с utf8 символами. Добавь в самый конец регулярки - u

Пришелец
0
Warning: preg_replace(): Compilation failed: range out of order in character class at offset 89 in D:\Projects\zendtest.local\public\test.php on line 4 Автор, у меня твоя регулярка ошибку выдает. У тебя ничего не пройдет, ты не видишь от того что скрыл сообщения ошибках.
лови $title = preg_replace("/[^\sА-ЯёЁ\w\d=,.!#№:;?()«»@=_-]/i",'',$_POST['title']);
П

Пацак
0
7. Stanislav-WEB, ошибка, как я понимаю, из-за того, что дефис в середине. А твоя регулярка захватывает лишние символы (например, табуляцию) а класс \w вообще зависит от локали. Лучше использовать такое -
/[ А-ЯёЁa-z\d=,.!#№:;?_()«»@=_-]/iu
Ю

deleted
0
Stickers / Tags / Rules / Top topics / Top Posts / Search