Вот, нужно так,чтобы получилось.
25 тур «Карца»,«Карабулак»,2,3 «ДФШ Ангушт» (Назрань),«Завод» (Назрань),5,3 «Беркут» (Альтиево),«Али-Юрт»,6,2 «Сунжа» (Троицкая),«Ветераны Ингушетии»,-,+ «Мангуст» (Плиево),«Олимп» (Назрань),0,3 «Барс» (Барсуки),«Барт» (Новый Редант),1,3 «Сурхо» (Сурхахи),«Энергетик» (Назрань),1,2 «Хамхи» (Слепцовск),«КАЦТОРГ» (Экажево),, «Вайнах-Строймаркет» (Насыр-Корт),«Наьсар» (Насыр-Корт),, 26 тур «Вайнах-Строймаркет» (Насыр-Корт),«Карабулак»,4,3 «Наьсар» (Насыр-Корт),«Энергетик» (Назрань),1,6 «КАЦТОРГ» (Экажево),«Сурхо» (Сурхахи),3,1 «Хамхи» (Слепцовск),«Барт» (Новый Редант),-,+ «Мангуст» (Плиево),«Барс» (Барсуки),7,3 «Олимп» (Назрань),«Сунжа» (Троицкая),+,- «Завод» (Назрань),«Али-Юрт»,+,- «Карца»,«ДФШ Ангушт» (Назрань),7,4 «Беркут» (Альтиево),«Ветераны Ингушетии»,5,4 Читать документацию-обычно отвечают... |
<p style='display:none'> 25 тур «Карца» 2:3 «Карабулак» «ДФШ Ангушт» (Назрань) 5:3 «Завод» (Назрань) «Беркут» (Альтиево) 6:2 «Али-Юрт» «Сунжа» (Троицкая) -:+ «Ветераны Ингушетии» «Мангуст» (Плиево) 0:3 «Олимп» (Назрань) «Барс» (Барсуки) 1:3 «Барт» (Новый Редант) «Сурхо» (Сурхахи) 1:2 «Энергетик» (Назрань) «Хамхи» (Слепцовск) – «КАЦТОРГ» (Экажево) «Вайнах-Строймаркет» (Насыр-Корт) – «Наьсар» (Насыр-Корт) 26 тур «Вайнах-Строймаркет» (Насыр-Корт) 4:3 «Карабулак» «Наьсар» (Насыр-Корт) 1:6 «Энергетик» (Назрань) «КАЦТОРГ» (Экажево) 3:1 «Сурхо» (Сурхахи) «Хамхи» (Слепцовск) -:+ «Барт» (Новый Редант) «Мангуст» (Плиево) 7:3 «Барс» (Барсуки) «Олимп» (Назрань) +:- «Сунжа» (Троицкая) «Завод» (Назрань) +:- «Али-Юрт» «Карца» 7:4 «ДФШ Ангушт» (Назрань) «Беркут» (Альтиево) 5:4 «Ветераны Ингушетии» </p> <script> var a = document.getElementsByTagName('p')[0].innerHTML; var str = a.replace(/^(.+?) ([\d\+\-]*?(?::|–)[\d\+\-]*?) (.*?)$/gim,'$1,$3,$2').replace(/:/gim,',').replace(/,–/gim,',,') str=str.split(/\n/gim).join('<br />'); document.write(str) </script> |
Deff,спасибо.
Ветеран,не совсем понятно.И в 1 и во 2 скриптах применялся метод матч,а после него массив получается,а не строка?Запутался совсем. |
dima***,
да, после матча получается массив. Но во втором случае вы берете из этого массива элемент и применяете реплейс к нему rd= a.match(rega); for (var i=0;i<rd.length; i++){ gf[i]=rd[i].replace(rega,'$1,$6,$4,$5');// rd - это массив, а rd[i] - это строка. Как еще объяснить-то? :) а в первом пытались применять прям к массиву. b[i][j]=b[i][j].match(rega);//b[i][j] - это массив d[j]=b[i][j].replace(rega,'$1,$4,$2,$3');//b[i][j] - это массив |
Ветеран,только не ругайтесь.Просто,пытаюсь понять..
Почему rd[i]-это строка?Мы же к rd применили метод матч.rd[i]-должен быть элемент массива? |
Цитата:
|
Цитата:
|
Цитата:
Что непонятно? Методом match на выходе получаем МАССИВ, каждый элемент которого - это СТРОКА совпадения по условиям регулярки. b[i][j] = b[i][j].match(rega);// массив, который мы получили в первом случае - b[i][j] (смотрим левую часть выражения до знака "=") rd = a.match(rega);// массив, который мы получили во втором случае - rd (смотрим левую часть выражения до знака "=") Затем вы хотели бы применить метод replace d[j]=b[i][j].replace(rega,'$1,$4,$2,$3'); // в первом случае вы его пытались применить к МАССИВУ b[i][j] (см. выше) gf[i]=rd[i].replace(rega,'$1,$6,$4,$5'); // во втором случае вы его применяете к элементу массива rd[i] (помните, что массив - это rd?) Вы меня извините, но я не вижу, каким образом можно разжевать это более тщательно, так что покидаю эту ветку. Тем более, что решение вам уже дали, пока я старался объяснить, в чем была ошибка. |
Ветеран,большое спасибо!Вы очень помогли с replace.Я ,просто,этого не знал.Теперь буду знать.
|
Часовой пояс GMT +3, время: 00:49. |