Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.02.2016, 13:36
Профессор
Отправить личное сообщение для espltd Посмотреть профиль Найти все сообщения от espltd
 
Регистрация: 10.10.2012
Сообщений: 201

Help. нужна помощь с регулярами
Доброго дня! Помогите пожалуйста.

В textarea есть список телефонов такого вида
+79028380801;
+79197076971;
89199176972;
+79206496973;
89192236974;
8-9502236923;
89222236958

При нажатии на кнопку, мне надо привести их к общему виду. такому виду
89199999999. запятые нужно оставить, чтобы получилось 89199999999;89229999999
Ответить с цитированием
  #2 (permalink)  
Старый 24.02.2016, 14:25
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

espltd,
<!DOCTYPE html>
<html lang="en">
<head>
	<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
<textarea rows="12">+79028380801;
+79197076971;
89199176972;
+79206496973;
89192236974;
8-9502236923;
89222236958;
</textarea>
<button onclick="same()">Привести к общему виду</button>
<div id="ggg"></div>
</body>
</html>
<script>
 	function same(){
 		var t = $('textarea').val();
 		var r1 = t.replace(/\+7/g,"8");
 		var r2 = r1.replace(/\-/g,"");
 		$('textarea').val(r2);
}
</script>
Ответить с цитированием
  #3 (permalink)  
Старый 25.02.2016, 10:04
Профессор
Отправить личное сообщение для espltd Посмотреть профиль Найти все сообщения от espltd
 
Регистрация: 10.10.2012
Сообщений: 201

Спасибо огромное! Работает, а как мне убрать точку с запятой у последнего номера после обработки? с сделать номера без переноса строк, чтобы по типу csv работало. 89226491172;89504443030; и т.д., а у последнего убрать точку с запятой
Ответить с цитированием
  #4 (permalink)  
Старый 25.02.2016, 10:13
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

\
Сообщение от espltd
как мне убрать точку с запятой у последнего номера после обработки? с сделать номера без переноса строк, чтобы по типу csv работало. 89226491172;89504443030; и т.д., а у последнего убрать точку с запятой
<!DOCTYPE html>
<html lang="en">
<head>
	<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
<textarea rows="12">+79028380801;
+79197076971;
89199176972;
+79206496973;
89192236974;
8-9502236923;
89222236958;
</textarea>
<button onclick="same()">Привести к общему виду</button>
<div id="ggg"></div>
</body>
</html>
<script>
 	function same(){
 		var t = $('textarea').val();
 		var r1 = t.replace(/\+7/g,"8");
 		var r2 = r1.replace(/\-/g,"");
 		var r3 = r2.replace(/\r|\n/g, '');
 		var r4 = r3.slice(0, -1);
 		$('textarea').val(r4);
}
</script>
Ответить с цитированием
  #5 (permalink)  
Старый 25.02.2016, 10:34
Профессор
Отправить личное сообщение для espltd Посмотреть профиль Найти все сообщения от espltd
 
Регистрация: 10.10.2012
Сообщений: 201

спасибо тебе большое
Ответить с цитированием
  #6 (permalink)  
Старый 25.02.2016, 10:40
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

espltd,
Но вы только смотрите, чтобы у вас была точка с запятой в последним номере. Потому что иначе будет печалька (там происходит удаление последнего символа, я думаю понятно, чем это грозит, потерей части номера).
Ответить с цитированием
  #7 (permalink)  
Старый 25.02.2016, 10:57
Профессор
Отправить личное сообщение для espltd Посмотреть профиль Найти все сообщения от espltd
 
Регистрация: 10.10.2012
Сообщений: 201

ну мне действительно именно с последнего номера и надо убрать. Странная штука возникла, я попробовал ваш код в проекте. Мне выкатывает ошибку((

Ответить с цитированием
  #8 (permalink)  
Старый 25.02.2016, 11:04
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

espltd,
replace() - передайте ей два аргумента. Что искать и на что заменять!
Ответить с цитированием
  #9 (permalink)  
Старый 25.02.2016, 11:08
Профессор
Отправить личное сообщение для espltd Посмотреть профиль Найти все сообщения от espltd
 
Регистрация: 10.10.2012
Сообщений: 201

причину нашел. не считывалось значение из поля телефонов. поправил. все норм. Спасибо Вам
Ответить с цитированием
  #10 (permalink)  
Старый 25.02.2016, 11:09
Профессор
Отправить личное сообщение для espltd Посмотреть профиль Найти все сообщения от espltd
 
Регистрация: 10.10.2012
Сообщений: 201

AciDWarrioR, можете мне свои контакты на всякий случай дать, мыло или аську. или вконтакте. Мало ли шабашка по яваскрипту для ВАС будет . Буду знать кому предложить
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь по javascript darklend Общие вопросы Javascript 0 12.01.2014 23:33
Мой товарищ погибает, нужна помощь!!! SuperBenza Оффтопик 0 03.10.2013 15:14
Нужна помощь: Slider wheel Alex555 Мобильный JavaScript 0 15.05.2013 18:06
Нужна помощь по слайдеру seoguru Работа 3 28.01.2013 22:02
нужна помощь dominosoko Серверные языки и технологии 4 14.03.2010 02:17