正则表达式修剪尾随空格和新行

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

我有一个提取器来提取有时会分布在2行的字符串。

正则表达式:(?s)<h1 itemprop="name">(.+[\w\n\t])</h1>

例子:

1)在2行→

<h1 itemprop="name">Hello-, World1234
</h1>

结果:

Hello-, World1234
Blank Line   -- I want to remove/trim this line

2)在1行→

<h1 itemprop="name">Hello-, World1234</h1>

结果:

Hello-, World1234   -- This result is correct
regex newline space
1个回答
0
投票

您可以使用以下正则表达式:

<h1 itemprop="name">\s*(([^<>\s\h]+\s*[^<>\h\s]+\h*)+)\s*</h1>

背面参考你的第一个捕获组:\1

我已经在以下示例中对其进行了测试,并且它的工作文件:

<h1 itemprop="name">
Hello-, 
World1234

</h1>

<h1 itemprop="name">Hello-, World1234

</h1>

<h1 itemprop="name">
Hello-, 


World1234

</h1>

它提供以下输出:

1)

Hello-, 
World1234

2)

Hello-, World1234

3)

Hello-, 


World1234
© www.soinside.com 2019 - 2024. All rights reserved.