В начале html - кода файла RSS (расширение: *.xml) стоит:
Если файл в кодировке U T F - 8, то откройте этот файл с помощью блокнота, замените кодировку на windows-1252 (или просто выбросьте эту строчку) и сохраните его в тот же самый файл в кодировке ANSI, дальше работаем с этим файлом.
Перед началом работы с текстом следует произвести в нём замену (здесь x это html - код)
Весь текст заключён внутри тега
Внутри предыдущего тега стоит тег
Внутри предыдущего тега стоят теги
x=x.replace(/<item>/gi,'<fieldset>')
x=x.replace(/<\/item>/gi,'</fieldset>')
или так
x=x.replace(/item/gi,'fieldset')
Внутри предыдущего тега стоят теги "title", "link", "description", "category", "pubDate", и другие. Разберём их.
Тег
x=x.replace(/<title>/gi,'<strong>')
x=x.replace(/<\/title>/gi,'.</strong>')
Тег
x=x.replace(/<link>/gi,'<a href="')
x=x.replace(/<\/link>/gi,'">_</a>")
Тег
x=x.replace(/<description>/gi,'<small>')
x=x.replace(/<\/description>/gi,'.</small>')
Тег
x=x.replace(/<category>/gi,'<img src="" alt="')
x=x.replace(/<\/category>/gi,'">')
Тег
x=x.replace(/<pubDate>/gi,'<img src="" alt="')
x=x.replace(/<\/pubDate>/gi,'">')
Тег
x=x.replace(/<pubDateUT>/gi,'<img src="" alt="')
x=x.replace(/<\/pubDateUT>/gi,'">')
Тег
x=x.replace(/<dc:creator>/gi,'<img src="" alt="')
x=x.replace(/<\/dc:creator>/gi,'">')
Тег
x=x.replace(/<dc:subject>/gi,'<img src="" alt="')
x=x.replace(/<\/dc:subject>/gi,'">')
Тег
x=x.replace(/<guid>/gi,'<img src="" alt="')
x=x.replace(/<guid isPermaLink="false">/gi,'<img src="" alt="')
x=x.replace(/<guid isPermaLink="true">/gi,'<img src="" alt="')
x=x.replace(/<\/guid>/gi,'">')
В завершении нужно заменить < и > на < и > соответственно.
x=x.replace(/</gi,'<')
x=x.replace(/>/gi,'>')
При выполнении перечисленных замен останется не распознанной информация, находящаяся до первого тега item, но она не очень ценная.
Если нужно не просто отобразить содержимое файла, а расположить его в нужном порядке, поступим следующим образом.
1 Создадим переменную te_xt, массив "M" и массив M_x из кусков файла, нарезанного по item.
te_xt=''
var M=new Array()
M_x=x.split('<item>')
2 Будем перебирать куски с первого до последнего (кусок с номером ноль пропускаем).
for(i=1; i<M_x.length; i++){//for
te_xt=ti_tle=li_nk=descrip_tion=categ_ory=pub_Date=''
}//for
3 В каждом куске создаём переменную ti_tle, принимающую значение тега title (если он есть).
if(M_x[i].split('<title>').length>1){
ti_tle=M_x[i].split('<title>')[1].split('</title>')[0]}
4 Получаем переменную li_nk.
if(M_x[i].split('<link>').length>1){
li_nk=M_x[i].split('<link>')[1].split('</link>')[0]}
5 Получаем переменную descrip_tion.
if(M_x[i].split('<description>').length>1){
descrip_tion=M_x[i].split('<description>')[1].split('</description>')[0]
descrip_tion=descrip_tion.replace(/</gi,'<')
descrip_tion=descrip_tion.replace(/>/gi,'>')}
6 Получаем переменную categ_ory.
if(M_x[i].split('<category>').length>1){
categ_ory=M_x[i].split('<category>')[1].split('</category>')[0]}
7 Получаем переменную pub_Date.
if(M_x[i].split('<pubDate>').length>1){
pub_Date=M_x[i].split('<pubDate>')[1].split('</pubDate>')[0]}
8 Из pub_Date получаем две переменные da_ta1 и da_ta2.
ddd=new Date(pub_Date)
//
mo_nth=ddd.getMonth()+1
if(mo_nth<10){mo_nth='0'+mo_nth}
da_te=ddd.getDate()
if(da_te<10){da_te='0'+da_te}
hou_rs=ddd.getHours()
if(hou_rs<10){hou_rs='0'+hou_rs}
minu_tes=ddd.getMinutes()
if(minu_tes<10){minu_tes='0'+minu_tes}
//
da_ta1=mo_nth+''+da_te+''+hou_rs+''+minu_tes
//
da_ta2='Воскресенье Понедельник Вторник Среда Четверг Пятница Суббота'.split(' ')[ddd.getDay()]+' '+ddd.getHours()+'-'+minu_tes+'.'
//
da_ta2=da_ta2.replace (/ 1\-/g,' час ')
da_ta2=da_ta2.replace (/-0/g,' ноль ')
9 Набираем массив "M".
M[i]= categ_ory+' '+da_ta1+'@@@'
M[i]+='<img src="" alt="'+categ_ory+'">'
M[i]+='\r\n<br>'+da_ta2
M[i]+='\r\n<h3>'+ti_tle+'.</h3>'
M[i]+='\r\n'+descrip_tion
10 Сортируем его.
M=M.sort()
11 Набираем переменную te_xt.
for(i=0; i<M.length-1; i++){//for1
te_xt+=M[i].split('@@@')[1]+'<br><br><br>'
}//for1
24.1.2011 40.111