我想在字符串的一部分中替换换行符。假设我有以下几点:在字符串的一部分中替换换行符
foo bar __level [
$save = 123,
Info = '1234'
]
{Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut
labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
velit esse cillum dolore eu fugiat nulla pariatur.}
我希望替换此:
foo bar __level [$save = 123,Info = '1234']
{Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut
labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
velit esse cillum dolore eu fugiat nulla pariatur.}
所以基本上换行符应该直到它看到一个{
字符删除。其余的应该保持其新行。
我知道我可以使用替换所有换行符\s+
。但在这种情况下我不知道该怎么做,因为我只需要将它替换为字符串中的一小部分。
那么如何用preg_replace
做到这一点呢?
'\ s'匹配的空白,不只是换行符。 – faintsignal
@faintsignal是的,但在这种情况下,替换的形式是'preg_replace('#\ s +#','',$ str);'。所以它会保留它的空间。 – Vivendi