需要选择两行然后在这些行周围添加HTML

时间:2012-07-12 12:02:30

标签: html regex

我试图将文本转换为HTML表格,并且我会卡在部件上以分隔行。

让我们说我开始使用这样显示的文字:

  

1:a

     

2:w

     

3:p

然后用一点REGEX我把它变成了

<td>1</td>
<td>a</td>
<td>2</td>
<td>w</td>
<td>3</td>
<td>p</td>

现在如何(使用REGEX)将其变为:

<tr>
  <td>1</td>
  <td>a</td>
</tr>
<tr>
  <td>2</td>
  <td>w</td>
</tr>
<tr>
  <td>3</td>
  <td>p</td>
</tr>

缩进就在那里,所以你可以更好地看到它,我实际上并不想让它添加它们。

所以我会以某种方式让它寻找

<td>[0-9]

然后选择该行和下一行,然后通过

添加和
<td>\1<\td>

但我不知道如何完全做到这一点,如果有人能够理解那些烂摊子你能帮我吗? d:

编辑:已完成工作!

我从

开始
  

1:a

     

2:w

     

3:p

然后我这样做了:

Find: ": "
Replace: "\r\n"

然后

Find: "([0-9])"
Replace: "<td>\1<td>"

然后

Find: "^([^<]+)$"
Replace: ""

然后

Find: "(<td>[0-9]</td>)[\r][\n]"
Replace: "\1"
Huehuehue,然后

Find: "^(.*<td>[0-9]*+)$"
Replace: "<tr>\1</tr>"

可能有更简单的方法可以做到这一点,但我终于明白了:D

1 个答案:

答案 0 :(得分:1)

你的第一个正则表达式应该将初始文本转换为3行,而不是6,如你所示:

<td>1</td><td>a</td>
<td>2</td><td>w</td>
<td>3</td><td>p</td>

然后问题变得相对简单。