Javascript.RU

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

РегВыражения
Добрый день! прочитал много статей по регулярным выражениям, но так и не могу пока до конца с ними разобраться ( помогите решить задачу: есть входная последовательность из 20 символов: "40603810800020000137" как с помощью регулярного выражения привести строку к формату: "40603.810.8.00020000137"? Заранее спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 20.11.2014, 11:19
Новичок на форуме
Отправить личное сообщение для beyz Посмотреть профиль Найти все сообщения от beyz
 
Регистрация: 20.11.2014
Сообщений: 3

Вот, что у меня пока получилось:
var regexp = '40603810800020000137'.replace((?=(\w{11})+(?!\w{2 }))/g, '.');

"40603810800020000137" -> "40603810.8.00020000137"

Осталось одну точку поставить, но тут я в тупике (
Ответить с цитированием
  #3 (permalink)  
Старый 20.11.2014, 11:36
Профессор
Посмотреть профиль Найти все сообщения от krutoy
 
Регистрация: 09.11.2014
Сообщений: 610

s="40603810800020000137"
re=/(\d{5})(\d{3})(\d)(\d+)/
alert(s.replace(re, "$1.$2.$3.$4"))
Ответить с цитированием
  #4 (permalink)  
Старый 20.11.2014, 13:01
Новичок на форуме
Отправить личное сообщение для beyz Посмотреть профиль Найти все сообщения от beyz
 
Регистрация: 20.11.2014
Сообщений: 3

Сообщение от krutoy Посмотреть сообщение
s="40603810800020000137"
re=/(\d{5})(\d{3})(\d)(\d+)/
alert(s.replace(re, "$1.$2.$3.$4"))
Спасибо!
Ответить с цитированием
Ответ



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

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