Javascript.RU

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

Поменять местами символы, относительно их положения
Здравствуйте! Есть строка:
code-16429998id1733999hash3d777222hd
Нужно получить такую:
code-42169998id3317999hash3d222777hd
Т.е., поменять местами красные и синие цифры, относительно их положения (т.е. первых 2 числа (в данном примере 16), будут всегда занимать позицию 6 и 7го символа.
Можно ли это как-то осуществить на JavaScript?
Ответить с цитированием
  #2 (permalink)  
Старый 30.12.2013, 18:28
Новичок на форуме
Отправить личное сообщение для k1ker Посмотреть профиль Найти все сообщения от k1ker
 
Регистрация: 23.12.2013
Сообщений: 3

Хотя, здесь наверное придется с помощью рег. выражений разбивать на 10 переменных и с ними уже работать? По-другому никак, да?

Последний раз редактировалось k1ker, 30.12.2013 в 18:31.
Ответить с цитированием
  #3 (permalink)  
Старый 30.12.2013, 18:57
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

Сообщение от k1ker
code-16429998id1733999hash3d777222hd
Нужно получить такую:
code-42169998id3317999hash3d222777hd
Т.е., поменять местами красные и синие цифры, относительно их положения (т.е. первых 2 числа (в данном примере 16), будут всегда занимать позицию 6 и 7го символа.
6 и 7й символы - это девятки. Они же на месте остались
Ответить с цитированием
  #4 (permalink)  
Старый 30.12.2013, 19:09
Новичок на форуме
Отправить личное сообщение для k1ker Посмотреть профиль Найти все сообщения от k1ker
 
Регистрация: 23.12.2013
Сообщений: 3

Сообщение от BETEPAH Посмотреть сообщение
6 и 7й символы - это девятки. Они же на месте остались
Все! Проблему решил совершенно другим способом..)
Не правильно подошел изначально

BETEPAH, спасибо за помощь!

Последний раз редактировалось k1ker, 30.12.2013 в 19:19.
Ответить с цитированием
  #5 (permalink)  
Старый 30.12.2013, 23:34
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от k1ker
Есть строка:
code-16429998id1733999hash3d777222hd
Нужно получить такую:
code-42169998id3317999hash3d222777hd
Сообщение от k1ker
здесь наверное придется с помощью рег. выражений разбивать на 10 переменных и с ними уже работать?
Ты плохо думаешь про регулярные выражения...
Как вариант

var str='16429998id1733999hash3d777222hd';
alert(str.replace(/((\d\d)(\d\d)(999))|((\d{3})(\d{3}))/g,'$3$2$4$7$6'))
Ответить с цитированием
  #6 (permalink)  
Старый 01.01.2014, 19:17
Аспирант
Отправить личное сообщение для Antonius Посмотреть профиль Найти все сообщения от Antonius
 
Регистрация: 30.11.2013
Сообщений: 42

Так как решилость в итоге, если не регулярками?

Тоже хотел предложить способ с сохраняющими группами
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поменять местами два <div> Bay Events/DOM/Window 11 11.02.2013 22:37
Как поменять местами элементы? dezzignet jQuery 2 19.07.2012 13:36
Поменять event`ы местами UnderShot Events/DOM/Window 8 08.10.2010 21:21
Поменять слова местами iceman Общие вопросы Javascript 1 23.06.2009 16:14
Как поменять местами элементы в дереве элемента родителя? rar11 Events/DOM/Window 8 01.04.2009 18:53