删除括号和前括号后的新行?

问题描述 投票:0回答:1

我使用 Notepad++ 在 PHP 代码的每一行后面添加一个空格。问题是它还在第一个 if 和 while 语句括号后添加了一个新行。所以它最初看起来像:

if (1 == 1)
{
     echo 'test';
}
while (blah = blah)
{
     echo 'blah';
}

记事本添加新行会将其变成:

if (1 == 1)

{

     echo 'test';

}

while (blah = blah)

{

     echo 'blah';

}

您可以看到它在 { 括号之前添加了一行,这是我不想要的。 我已经尝试和搜索,但无法找出预匹配,仅删除末尾括号和前括号之后的行。这样它看起来就像这样:

if (1 == 1)
{

     echo 'test';

}

while (blah = blah)
{

     echo 'blah';

}

任何人都可以向我提供该 pregmatch 来仅删除 ) 和 { 之间的换行符和空格吗?你可以支付一百万美元,但我自己永远无法解决这个问题。我想我只是不够聪明。谢谢。

没有任何效果,我在网上找不到任何与 ) 和 { 匹配的东西。数以百万计的其他类型的示例,但没有一个是相关的。

php preg-match
1个回答
0
投票

您可以使用这个正则表达式:

(?<=\n)\n(?={)

搜索前面有另一个换行符且后跟

{
的换行符,然后将其替换为空字符串。在 PHP 中

$text = preg_replace('/(?<=\n)\n(?={)/', '', $text);

3v4l.org

进行演示
© www.soinside.com 2019 - 2024. All rights reserved.