Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   упорядычивание (https://javascript.ru/forum/misc/34215-uporyadychivanie.html)

Vampir3 24.12.2012 18:02

упорядычивание
 
есть контейнер span
<span id="online"><b>Онлайн: </b>Гость, Гость, ник1, ник2, Newb1e, trololo, user3, Гость, Гость, Гость, Гость, Гость, Гость, Никнейм 2, peace, Гость</span>


и есть скрипт, комплектующий их.

var a = document.getElementById('online');
var len = a.innerHTML.match(/Гость/g).length;
a.innerHTML = a.innerHTML.replace(/Гость/g,'') + "Гость(" + len + ")";


Но скрипт оставляет после себя кучу запятых
Помогите переделать скрипт так, чтобы он оставлял 1 запятую после ников, а остальные удалял

ivan.pshenicyn 24.12.2012 18:16

замените в регулярках "Гость" на "Гость(,( )?)?"
т.е.
.replace(/Гость(,( )?)?/g,'')

таким образом будут найдены (и вырезаны) "Гость" "Гость," "Гость, "

Vampir3 24.12.2012 18:22

Цитата:

Сообщение от ivan.pshenicyn (Сообщение 223285)
замените в регулярках "Гость" на "Гость(,( )?)?"
т.е.
.replace(/Гость(,( )?)?/g,'')

таким образом будут найдены (и вырезаны) "Гость" "Гость," "Гость, "

спасибо) не мог додуматься)

Deff 24.12.2012 18:47

<span id="online"><b>Онлайн: </b>Гость, Гость, ник1, ник2, Newb1e, trololo, user3, Гость, Гость, Гость, Гость, Гость, Гость, Никнейм 2, peace, Гость</span>


<script type="text/javascript">
var a = document.getElementById('online').innerHTML;
var X = a.replace(/(?:Гость?,)|(?:Гость)/mg,'').replace(/,?.$/mg,'')+", ";
var len = a.match(/Гость/gm).length;
document.getElementById('online').innerHTML = X + "Гость(" + len + ")";
</script>


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