将<p>标记添加到纯文本段落</p>

时间:2012-04-01 19:44:53

标签: jquery html text formatting

我正在尝试编写一个脚本来自动执行我在工作中需要做的相当漫长而痛苦的过程。

示例:
简而言之,我得到一个文本文档,其中包含4行文本和两个换行符,这种格式重复5到8页。然后我必须从每个“段落”中提取6条信息,然后将它们输入到另一个文档的表格中。

由于我得到的输出被格式化(包括我从中提取数据的字段),我希望能够将我的文本粘贴到文本框中,单击转换,并让它返回我需要的结果并列出它们一张桌子。

我需要帮助/建议的地方:
根据我有限的JavaScript知识,我认为我需要在每个4行“段落”周围设置<p>个标签。然后我应该能够编写一个脚本来选择<p>标签,提取我需要的数据,将其写入表格,然后重复下一个<p>标签的过程。

我知道有一些在线选项会为我这样做(例如textfixer.com),但我的系统没有连接到互联网,出于安全考虑,它永远不会。这意味着我不能使用PHP(我知道更好)或任何其他服务器端处理。我希望这可以通过JavaScript完成,所以我可以通过浏览器处理它。这是一台Windows机器,所以如果有其他方法可以做到这一点,我愿意接受这些想法。

2 个答案:

答案 0 :(得分:1)

您可以将文档拆分为一系列三个换行符(一个用于说明换行符的结尾,两个用于空行),然后使用段落标记重新加入它们:

// 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/

答案 1 :(得分:0)

是的,你的方法很好。 #paragraph将选择代码

  #paragraph
  {
    //do whatever you want
  }

您甚至可以使用id ='table'定义表,并直接从上面的选择中添加数据。

例如:

 {
   var p=('#paragraph').fectchCode algo();
   $('#table').append(p);
 }