Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.06.2016, 18:51
Аспирант
Отправить личное сообщение для veltony Посмотреть профиль Найти все сообщения от veltony
 
Регистрация: 10.01.2015
Сообщений: 54

Помогите перенести регулярное выражение из php в js.
Есть регулярное выражение в php (удаляет номера телефонов из текста), если не трудно,мог-бы кто-нибудь помочь и написать такую же регулярку только на js

$text = preg_replace("/(8|7|\+7){0,1}[- \\\\(]{0,}([9][0-9]{2})[- \\\\)]{0,}(([0-9]{2}[- ]{0,}'.'[0-9]{2}[- ]{0,}[0-9]{3})|([0-9]{3}[- ]{0,}[0-9]{2}[- ]{0,}[0-9]{2})|([0-9]{3}[- ]{0,}''[0-9]{1}[- ]{0,}[0-9]{3})|([0-9]{2}[- ]{0,}[0-9]{3}[- ]{0,}[0-9]{2}))/", "", $text);



С ув.
Ответить с цитированием
  #2 (permalink)  
Старый 08.06.2016, 23:00
Аватар для Coriolan161
Профессор
Отправить личное сообщение для Coriolan161 Посмотреть профиль Найти все сообщения от Coriolan161
 
Регистрация: 21.11.2015
Сообщений: 440

veltony,
1) Гойвертс Я., Левитан С. Регулярные выражения. Сборник рецептов (2009)
2) Фридл Дж. Регулярные выражения (3-е издание, 2008)
Ответить с цитированием
  #3 (permalink)  
Старый 08.06.2016, 23:20
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

на первый взгляд так:

'string'.replace(/(8|7|\+7){0,1}[- \\\\(]{0,}([9][0-9]{2})[- \\\\)]{0,}(([0-9]{2}[- ]{0,}'.'[0-9]{2}[- ]{0,}[0-9]{3})|([0-9]{3}[- ]{0,}[0-9]{2}[- ]{0,}[0-9]{2})|([0-9]{3}[- ]{0,}''[0-9]{1}[- ]{0,}[0-9]{3})|([0-9]{2}[- ]{0,}[0-9]{3}[- ]{0,}[0-9]{2}))/, '')
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #4 (permalink)  
Старый 08.06.2016, 23:32
Аватар для Coriolan161
Профессор
Отправить личное сообщение для Coriolan161 Посмотреть профиль Найти все сообщения от Coriolan161
 
Регистрация: 21.11.2015
Сообщений: 440

nerv_,
g поставь. там текст, а не одна строка.
Ответить с цитированием
  #5 (permalink)  
Старый 08.06.2016, 23:34
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

'.' - ?
Ответить с цитированием
  #6 (permalink)  
Старый 09.06.2016, 13:03
Аспирант
Отправить личное сообщение для veltony Посмотреть профиль Найти все сообщения от veltony
 
Регистрация: 10.01.2015
Сообщений: 54

Большое спасибо Nerv_ , всё работает.
Ответить с цитированием
  #7 (permalink)  
Старый 09.06.2016, 13:16
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от veltony
всё работает
Так ли? Точка в рег. выражениях, это спец. символ, и если '.' это кавычки и точка, то точка должна быть экранирована.
Ответить с цитированием
  #8 (permalink)  
Старый 09.06.2016, 18:49
Аспирант
Отправить личное сообщение для veltony Посмотреть профиль Найти все сообщения от veltony
 
Регистрация: 10.01.2015
Сообщений: 54

Проверял разные варианты, но вроде всё работает как надо.
А как правильно должно быть? Вопрос по точке.
Ответить с цитированием
  #9 (permalink)  
Старый 09.06.2016, 19:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Не будет работать так как надо, ибо ... в общем читайте о рег. выражениях, там все сказано. А "кавычка точка..." должно быть так \.
Ответить с цитированием
  #10 (permalink)  
Старый 09.06.2016, 19:57
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Точка в JS и PHP по разному работает, в PHP она захватывает абсолютно все символы, а в JS - все в пределах одной строки.

Поэтому, лучше использовать:
[\s\S]
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите написать регулярное выражение bigjoy Общие вопросы Javascript 2 15.02.2014 23:23
регулярное выражение literator Ваши сайты и скрипты 1 18.08.2013 18:24
Как передавать параметры из php скрипта в js imissyouso Общие вопросы Javascript 3 01.08.2012 18:24
JS + php возврат информации Phantom Общие вопросы Javascript 1 28.09.2011 17:53
помогите написать аналог строки include("index.php?open=1") на js bushstas Общие вопросы Javascript 1 19.07.2009 02:48