ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

регулярка
  #1  
Старый 17.01.2009, 00:59
попугай
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
Провел на форуме:
2459557

Репутация: 606


По умолчанию регулярка

есть в тексте такие строки - (23423), (345), (535656) и тд...
то есть в скобках число, разные знаки...

Нужна регулярка, чтоб заменять это...

пробовал так preg_replace("|\(\d\)|", "", $text); - не работает...

а так - preg_replace("|(\d)|", "", $text); удаляется только цифры, а скобки остаются...

Что делать?
 
Ответить с цитированием

  #2  
Старый 17.01.2009, 01:05
m0nsieur
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
Провел на форуме:
2230263

Репутация: 229
По умолчанию

'/[0-9()]+/'
так не пойдет?
 
Ответить с цитированием

  #3  
Старый 17.01.2009, 01:07
попугай
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
Провел на форуме:
2459557

Репутация: 606


По умолчанию

Ого, работает...
А можешь расшифровать? почему скобки вконце стоят?
 
Ответить с цитированием

  #4  
Старый 17.01.2009, 01:13
m0nsieur
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
Провел на форуме:
2230263

Репутация: 229
По умолчанию

Да все просто, [] - пишу чего искать и перечисляю, что искать
[)0-9(] можно хоть так написать, не важно где их поставить, главное чтобы они указаны были))) а ты указывал в конструкции (\d) - значит запомнить все числа, то что ты скобки таким образом указал - не значит что цифры искать в скобках будут, это зарезервированное обозначение в регулярках (как-то так...хреново я объяснять умею)
 
Ответить с цитированием

  #5  
Старый 17.01.2009, 01:14
iron-viper
Участник форума
Регистрация: 13.11.2007
Сообщений: 180
Провел на форуме:
1058585

Репутация: 122
По умолчанию

Цитата:
Сообщение от попугай  
Ого, работает...
А можешь расшифровать? почему скобки вконце стоят?
В квадратных скобках перечислены символы которые должны попадать под шаблон а это : цифры от 0 до 9 и скобки "()"
 
Ответить с цитированием

  #6  
Старый 17.01.2009, 01:18
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

http://forum.antichat.ru/thread92492.html
 
Ответить с цитированием

  #7  
Старый 17.01.2009, 11:04
[dei]
Участник форума
Регистрация: 24.11.2008
Сообщений: 205
Провел на форуме:
1123418

Репутация: 362
Отправить сообщение для [dei] с помощью ICQ
По умолчанию

Цитата:
Сообщение от попугай  
есть в тексте такие строки - (23423), (345), (535656) и тд...
то есть в скобках число, разные знаки...

Нужна регулярка, чтоб заменять это...

пробовал так preg_replace("|\(\d\)|", "", $text); - не работает...

а так - preg_replace("|(\d)|", "", $text); удаляется только цифры, а скобки остаются...

Что делать?
|\(\d\)|
тут ты правильно мыслил, только \d отвечает за одну цифру, нужно добавить еще символ повторения +
|\(\d+\)|
 
Ответить с цитированием

  #8  
Старый 17.01.2009, 12:29
Ru}{eeZ
Постоянный
Регистрация: 19.02.2008
Сообщений: 438
Провел на форуме:
956872

Репутация: 186
Отправить сообщение для Ru}{eeZ с помощью ICQ
По умолчанию

Цитата:
Сообщение от m0nsieur  
'/[0-9()]+/'
так не пойдет?
так будет искать и числа, и скобки, а не числа в скобках
 
Ответить с цитированием

  #9  
Старый 17.01.2009, 12:37
m0nsieur
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
Провел на форуме:
2230263

Репутация: 229
По умолчанию

Цитата:
Сообщение от Ru}{eeZ  
так будет искать и числа, и скобки, а не числа в скобках
согласен, тогда так - '/\\(\\d+\\)/'
 
Ответить с цитированием

  #10  
Старый 17.01.2009, 16:37
D Mak
Участник форума
Регистрация: 23.06.2007
Сообщений: 188
Провел на форуме:
1051973

Репутация: 116
Отправить сообщение для D Mak с помощью ICQ
По умолчанию

Цитата:
согласен, тогда так - '/\\(\\d+\\)/'
зачем \\?
у [dei] все ок
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ