如何将字符串拆分成段落?

时间:2013-02-24 01:53:14

标签: javascript regex preg-match

我有这个字符串:

var content = '<?php echo $content; ?>';

看起来像:

<p style="text-align: center;"><span style="font-family: arial black,avant garde; color: #ff0000;"><strong>Dior</strong></span></p><p><span style="color: #339966;">As far as Candy could see there were plenty</span></p><p><span style="color: #339966;">Among those</span></p>

我想将它分成每个段落,结果如下:

<p style="text-align: center;"><span style="font-family: arial black,avant garde; color: #ff0000;"><strong>Dior</strong></span></p> 
<p><span style="color: #339966;">As far as Candy could see there were plenty</span></p>
... 

我认为可以用正则表达式完成,但我不确定。

3 个答案:

答案 0 :(得分:1)

我相信这样的事情会让你成为你想去的地方。

您希望在</p>上使用拆分,并在该字符串上创建拆分。这是生成的html和js。

您需要填写页面的html部分,但这是进行拆分的代码。

html

<div class="class">
    <p>text 1</p><p>text 2</p>   
</div>

javascript

var str = $('.class').html();
str = str.split('</p>');

for (var i=0;i<str.length;i++)
{ 
  $('.class').html().write(str[i] + "<br>");
}

那应该是它。这是一个jsfiddle的结果。

答案 1 :(得分:1)

基于贪婪匹配的简单正则表达式工作并返回数组:

re = /<p>.*?<\/p>/g
str.match(re)

答案 2 :(得分:0)

var replaced = content.replace(/<\/p>/g, "</p><br>")

值得一读:http://www.regular-expressions.info/javascript.html

虽然如此说,如果你在PHP中生成内容,为什么不直接插入&lt; br&gt;当你在制作内容时?