Добавьте <p>теги к текстовому абзацу - PullRequest
1 голос
/ 01 апреля 2012

Я пытаюсь написать сценарий, чтобы автоматизировать довольно долгий и болезненный процесс, который мне нужно делать на работе.

Сценарий:
Короче, мне даюттекстовый документ, который имеет 4 строки текста и два переноса строк, и этот формат повторяется для 5-8 страниц.Затем мне нужно извлечь 6 частей информации из каждого «абзаца» и ввести их в таблицу в другом документе.

Поскольку полученный вывод форматируется (включая поля, из которых я извлекаю данные), яЯ хотел бы иметь возможность вставить мой текст в текстовое поле, нажать «Преобразовать», чтобы он возвращал нужные мне результаты и заносил их в таблицу.

Где мне нужна помощь / совет:
Исходя из моего ограниченного знания JavaScript, я думаю, что мне нужно установить теги <p> вокруг каждого 4-строчного "абзаца".Затем я смогу написать сценарий, который выберет тег <p>, извлечет нужные мне данные, запишет их в таблицу и повторите процедуру для следующего тега <p>.

Я знаюесть онлайн-опции, которые сделают это для меня (например, textfixer.com), но моя система не подключена к интернету, и по соображениям безопасности она никогда не будет.Это означает, что я не могу использовать PHP (который я знаю лучше) или любую другую обработку на стороне сервера.Я надеюсь, что это можно сделать с помощью JavaScript, поэтому я могу обработать его через браузер.Это машина с Windows, поэтому, если есть другой способ, я открыт для идей.

Ответы [ 2 ]

1 голос
/ 03 апреля 2012

Вы можете разбить документ на серию из трех разрывов строк (один для учета конца строки, два для пустых строк), а затем объединить их с тегами абзаца:

// pull the document out
var doc = $("#my-document").val();

// split on double line breaks
// note that we actually split on triple to account for the trailing
// line break at the end of a paragraph
var parts = doc.split("\n\n\n");

// rejoin with paragraph tags
doc = parts.join("</p><p>");

// wrap the entire thing in open/close paragraphs
doc = "<p>" + doc + "</p>";

// and stick it in the output
$("#output").html(doc);

Пример: http://jsfiddle.net/2uMaK/

0 голосов
/ 01 апреля 2012

Да, ваш подход хорош. #paragraph выберет код

  #paragraph
  {
    //do whatever you want
  }

Вы даже можете определить таблицу с помощью id = 'table' и напрямую добавить туда данные, указанные выше.

Например:

 {
   var p=('#paragraph').fectchCode algo();
   $('#table').append(p);
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...