我是否可以在String.replace()中使用RegExp来替换带有br标签的换行符,在包含html标签的文本中...好像它不包含标签(完全忽略仅包含标签的行)。
例如,如果我有以下文字+ html输入。
<p>
line one
line <b>two</b>bold
line three
</p>
会变成
<p>
line one<br>
line <b>two</b>bold<br>
line three
</p>
任何帮助都是非常有用的
答案 0 :(得分:0)
我不认为这对正则表达式来说是一个好工作。你可能最好使用FIFO
缓冲区一次读取2行,如果第一行只有一个标记(你可以使用正则表达式检测我猜),你只需阅读下一行(丢弃带标签的行)并重做。如果您未在第一行中检测到标记,请将<br>
附加到第二行并替换该行。
这是一个用于解析标签的快速n-dirty正则表达式(_note,这仅用于演示,它将不处理格式错误的标签,可能会轻易破坏_):
<[a-z]+>
和here's可以在某个地方玩。
对于缓冲区,您可以使用Array
shift()
和push()
来删除旧行并分别读取下一行。使用正则表达式检查数组中的第一个元素,如果它通过,则更改第二个元素并用新文件替换文件中的字符串。
这是它应该是什么样子:
< test = ['first', 'second']
> Array [ "first", "second" ]
< test.shift()
> "first"
< test.push('third')
> 2
< test
> Array [ "second", "third" ]
<
是我对javascript控制台的输入,>
是它返回的内容。
答案 1 :(得分:0)