вторую сильно не смотрел, я сейчас занят.. но так в глаза кинулось следующее:
a1=document.getElementsByTagName('p')[0].innerHTML;
a1= a1.replace(/^\s*?\n\s*|\s*?\n\s*$/img,'').split(/\s*\n\s*/).join('\n')
//a1 = a1.replace(/(\r\n|\n|\r)/gm," ");
b1=a1.split(/\sПравка\sip\sinf/);
for (var i=0;i<b1.length-1; i++) {
b1[i]= b1[i].split(/\d{2}\.\d{2}\.\d{2}\s\d{2}\:\d{2}\s/);
var p=b1[i][0].split(/\n/);
for(k=0;k<p.length;k++){
rega=/\d|[А-Яа-я]+/ig;
h=p[k].match(rega);
var m=[];
for(l=0;l<h.match;l++){//for(l=0;l<h.match;l++) .. что за h.match ????
m[l]=m[l].split(','); //что это?? не нужно!! метод сплит есть у строки, но не у массива!!
console.log(m[l]+'<br>');
}}}