Просмотр полной версии : регулярка
есть в тексте такие строки - (23423), (345), (535656) и тд...
то есть в скобках число, разные знаки...
Нужна регулярка, чтоб заменять это...
пробовал так preg_replace("|\(\d\)|", "", $text); - не работает...
а так - preg_replace("|(\d)|", "", $text); удаляется только цифры, а скобки остаются...
Что делать?
m0nsieur
17.01.2009, 01:05
'/[0-9()]+/'
так не пойдет?
Ого, работает...
А можешь расшифровать? почему скобки вконце стоят?
m0nsieur
17.01.2009, 01:13
Да все просто, [] - пишу чего искать и перечисляю, что искать
[)0-9(] можно хоть так написать, не важно где их поставить, главное чтобы они указаны были))) а ты указывал в конструкции (\d) - значит запомнить все числа, то что ты скобки таким образом указал - не значит что цифры искать в скобках будут, это зарезервированное обозначение в регулярках (как-то так...хреново я объяснять умею)
iron-viper
17.01.2009, 01:14
Ого, работает...
А можешь расшифровать? почему скобки вконце стоят?
В квадратных скобках перечислены символы которые должны попадать под шаблон а это : цифры от 0 до 9 и скобки "()"
Pashkela
17.01.2009, 01:18
http://forum.antichat.ru/thread92492.html
есть в тексте такие строки - (23423), (345), (535656) и тд...
то есть в скобках число, разные знаки...
Нужна регулярка, чтоб заменять это...
пробовал так preg_replace("|\(\d\)|", "", $text); - не работает...
а так - preg_replace("|(\d)|", "", $text); удаляется только цифры, а скобки остаются...
Что делать?
|\(\d\)|
тут ты правильно мыслил, только \d отвечает за одну цифру, нужно добавить еще символ повторения +
|\(\d+\)|
'/[0-9()]+/'
так не пойдет?
так будет искать и числа, и скобки, а не числа в скобках
m0nsieur
17.01.2009, 12:37
так будет искать и числа, и скобки, а не числа в скобках
согласен, тогда так - '/\\(\\d+\\)/'
согласен, тогда так - '/\\(\\d+\\)/'
зачем \\?
у [dei] все ок
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot