Создание уникальных элементов
Не получается создать уникальные элементы
Должно получиться: «Луч» пос.Демино «Факел» пос.Цимлянский ФК «Татарка Верхняя» ФК «Верхнерусское» «Нива» с.Казинка «ЗАО Верхнедубовское» ФК «Надежда» ФК «Михайловск-ДЮСШ» ФК «Сенгилеевское» ФК «Пелагиада» ФК «Татарка Нижняя» выходной <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Документ без названия</title> </head> <body> <p style='display:none'> 19 октября - 20 тур «Луч» пос.Демино - «Факел» пос.Цимлянский ФК «Татарка Верхняя» - ФК «Верхнерусское» «Нива» с.Казинка - «ЗАО Верхнедубовское» ФК «Надежда» - ФК «Михайловск-ДЮСШ» ФК «Сенгилеевское» - ФК «Пелагиада» ФК «Татарка Нижняя» - выходной 26 октября - 21 тур ФК «Пелагиада» - ФК «Надежда» ФК «Михайловск-ДЮСШ» - «Нива» с.Казинка «ЗАО Верхнедубовское» - ФК «Татарка Верхняя» ФК «Верхнерусское» - «Луч» пос.Демино «Факел» пос.Цимлянский - ФК «Татарка Нижняя» ФК «Сенгилеевское» - выходной 2 ноября - 22 тур ФК «Татарка Нижняя» - ФК «Верхнерусское» «Луч» пос.Демино - «ЗАО Верхнедубовское» ФК «Татарка Верхняя» - ФК «Михайловск-ДЮСШ» «Нива» с.Казинка - ФК «Пелагиада» ФК «Надежда» - ФК «Сенгилеевское» «Факел» пос.Цимлянский - выходной </p> <script type="text/javascript"> function uniq(arr){ var obj={}; for(var i=0;i<arr.length;i++){ str=arr[i]; obj[str]=true; } return Object.keys(obj) }//[COLOR="blue"]Функция для создания уникальных элементов[/COLOR] a=document.getElementsByTagName('p')[0].innerHTML; a = a.replace(/^(.+)\s+-\s+(.+)$/img,'$1,$2'); b=a.split(/\n/ig); for(var i=0;i<b.length;i++){ b[i]=b[i].split(','); for(var j=0;j<b[i].length;j++){ //document.write(b[i][j]+'<br>')[COLOR="blue"]Создание массива[/COLOR] //console.log(b[i][j]); //}} document.write(uniq(b[i][j]+'<br>'));//[COLOR="blue"]Создание уникальных элементов[/COLOR] //console.log(uniq(b[i][j]+'<br>')); }} </script> </body> </html> |
http://jsfiddle.net/GZs2Q/
var text = document.getElementsByTagName('p')[0].innerHTML; var re = /^\s*(.*\S)\s+-\s+(.*\S)\s*$/gm, re2 = /^\d+\s+[a-z\u0430-\u044F]+$/i; var m, map = {}, arr = []; while(m = re.exec(text)) { for(var i=1; i<=2; ++i) { if (!map[m[i]] && !re2.test(m[i])) { map[m[i]] = 1; arr.push(m[i]); } } } alert(arr.join('\n')); |
<p style='display:none'> 19 октября - 20 тур «Луч» пос.Демино - «Факел» пос.Цимлянский ФК «Татарка Верхняя» - ФК «Верхнерусское» «Нива» с.Казинка - «ЗАО Верхнедубовское» ФК «Надежда» - ФК «Михайловск-ДЮСШ» ФК «Сенгилеевское» - ФК «Пелагиада» ФК «Татарка Нижняя» - выходной 26 октября - 21 тур ФК «Пелагиада» - ФК «Надежда» ФК «Михайловск-ДЮСШ» - «Нива» с.Казинка «ЗАО Верхнедубовское» - ФК «Татарка Верхняя» ФК «Верхнерусское» - «Луч» пос.Демино «Факел» пос.Цимлянский - ФК «Татарка Нижняя» ФК «Сенгилеевское» - выходной 2 ноября - 22 тур ФК «Татарка Нижняя» - ФК «Верхнерусское» «Луч» пос.Демино - «ЗАО Верхнедубовское» ФК «Татарка Верхняя» - ФК «Михайловск-ДЮСШ» «Нива» с.Казинка - ФК «Пелагиада» ФК «Надежда» - ФК «Сенгилеевское» «Факел» пос.Цимлянский - выходной </p> <script type="text/javascript"> a=document.getElementsByTagName('p')[0].innerHTML; b = a.replace(/^.{0,23}$\n/gim,'') .replace(/^\s*(.+)\s+-\s+(.+)\s*$/img,'a["$1"]=1;a["$2"]=1;'); a = {};eval(b);var b=[]; for(var i in a)b.push(i); alert(b.join(',\n')); </script> |
|
Цитата:
Цитата:
a=> obj i => key |
спасибо
|
Часовой пояс GMT +3, время: 00:31. |