Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Заменить каждый n символ в строке (https://javascript.ru/forum/dom-window/55301-zamenit-kazhdyjj-n-simvol-v-stroke.html)

serhioses 22.04.2015 11:49

Заменить каждый n символ в строке
 
На сайте есть маленькие блоки фиксированной ширины в которых должны быть адреса, но адрес может быть длинным и не помещаться (тот что в тэге <p></p>). Нужно обойти каждый блок и заменить каждый 8 символ в нем на этот же символ + "-" (типа перенос) и соответственно вывести эту строку обратно только уже с дефисами. Как это реализовать?

<a href="#" class="tooltip">
                    <div class="tooltip-img">
                        <img src="images/img.jpg" alt="">
                    </div>
                    <div class="tooltip-text">
                        <p>ул. Краснозаводская 458б.</p>
                    </div>
                </a>

ksa 22.04.2015 13:07

Цитата:

Сообщение от serhioses
Как это реализовать?

Как вариант...
var adr='ул. Краснозаводская 458б.';
alert(adr.replace(/(.{7})(.)/g,'$1-$2'))

serhioses 22.04.2015 13:39

Спасибо огромное, буду учить RegExp
это как я понимаю просто циклом не сделать и без RegExp?

ksa 22.04.2015 13:47

Цитата:

Сообщение от serhioses
я понимаю просто циклом не сделать

Отнють! :nono:
Не в каждом языке есть нечто похожее на RegExp... Так вот там циклами это делают. :yes:

serhioses 22.04.2015 14:06

не представляю как это сделать, больше часа сидел... в JS почти не смыслю

ksa 22.04.2015 14:16

Цитата:

Сообщение от serhioses
в JS почти не смыслю

Причем тут JS... :) Это просто построение алгоритма... А for он и в Африке for. :D


Часовой пояс GMT +3, время: 16:00.