我一直在争论这个问题,因为我想我在正则表达式上并不是那么棒。我有几个ul-tags,在那些我想用“”(没有)替换每个/ n换行符。 所以,我想有这个
other lines right here
[ul]
[li]line[/li]
[li]line 1[/li]
[li]line 2[/li]
[/ul]
other lines right here
[ul]
[li]line[/li]
[li]line 1[/li]
[li]line 2[/li]
[/ul]
other lines right here
更改为
other lines right here
[ul][li]line[/li][li]line 1[/li][li]line 2[/li][/ul]
other lines right here
[ul][li]line[/li][li]line 1[/li][li]line 2[/li][/ul]
other lines right here
我只想摆脱ul-tag中的换行符。我怎么解决这个问题呢? 我应该pre_match_all每个ul标签,然后按照我希望的方式格式化匹配的内容吗?或者是否有更简单的preg_replace解决方案来处理标记中的所有换行符?
感谢您的帮助!
答案 0 :(得分:1)
我会以不同的方式看待它。 lotOfThings.map(function(thing) {
return { name: thing.name, role: thing.role };
});
将始终位于[li]
内(好吧,希望!)。所以你可以匹配其中任何一方的新行:
[ul]
你可以用几个str_replaces做同样的事情:
$string = preg_replace('/\R*(\[\/?li\])\R*/', '$1', $string);