Показать сообщение отдельно
  #12 (permalink)  
Старый 16.11.2014, 00:40
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,590

var htm='<tbody style="outline: 1px solid blue;">            <tr>        <td class="complKnowlege" style="vertical-align:middle;text-align:center">         1        </td>        <td class="complKnowlege" style="vertical-align:middle;">         АБС  "ЭНИКЕЙЩИКИ И КО"        </td>        <td style="vertical-align:middle;">         ЮЛ        </td>                 <td style="vertical-align:middle;">          032600003909         </td>                <td style="vertical-align:middle;">         000240014809        </td>        <td style="vertical-align:middle;">         11.02.2000        </td>        <td style="vertical-align:middle;">                 </td>        <td class="complKnowlege" style="vertical-align:middle;">                 </td>                 <td class="complKnowlege" style="vertical-align:middle;">         Дата :<span class="grayText">05.06.2009 </span> Тип :<span class="grayText">Признан недействительным </span>        </td>       </tr>             <tr>        <td class="complKnowlege" style="vertical-align:middle;text-align:center">         1        </td>        <td class="complKnowlege" style="vertical-align:middle;">         АБС  "ЭНИКЕЙЩИКИ И КО"        </td>        <td style="vertical-align:middle;">         ЮЛ        </td>                 <td style="vertical-align:middle;">          032600003909         </td>                <td style="vertical-align:middle;">         000240014809        </td>        <td style="vertical-align:middle;">         11.02.2000        </td>        <td style="vertical-align:middle;">                 </td>        <td class="complKnowlege" style="vertical-align:middle;">                 </td>                 <td class="complKnowlege" style="vertical-align:middle;">         Дата :<span class="grayText">05.06.2009 </span> Тип :<span class="grayText">Признан недействительным </span>        </td>       </tr>          </tbody>';
 


if (!String.prototype.trim) {
   String.prototype.trim = (function(rtrim){
      return function trim(){
         return this.replace(rtrim, '');
      }
   }(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g));
}
if (!Array.prototype.map) {
   Array.prototype.map = function(mapper, that) {
      var other = new Array(this.length);
      for (var i = 0, n = this.length; i < n; i++)
         if (i in this)
            other[i] = mapper.call(that, this[i], i, this);
      return other;
   };
}

function parse(htm){
   return htm.split(/<\/tr[^>]*>\s*<tr[^>]*>/).map(function(row){
      return row.split(/<\/td[^>]*>\s*<td[^>]*>/).map(function(cell){
         return cell.replace(/<[^>]+>/g, '').trim()
      })
   })
}

alert(JSON.stringify(
   parse(htm)
, null, '\t'))

JSON тут только для отображения результатов.

И всё же я настоятельно рекомендую не парсить html регулярками, а поступить как я сказал коммент назад, т.к. всегда есть шанс нарваться на подводные камни.
__________________
29375, 35
Ответить с цитированием