正则表达式和Velocity中的ReplaceAll来提取文本

时间:2019-02-25 09:16:28

标签: regex velocity

在速度方面,我有:

#set( $text = "#parse('file url')" )

我想要的是仅提取div中称为“ paragrafo-html”的文本。

文件内容和正则表达式位于此处:

https://regex101.com/r/wr8H04/1

我写了:

$text.replaceAll('(?:.|\\n)*?<div class="paragrafo-html" style="">((?:.|\\n)*?)</div>(?:.|\\n)*', '$1')

但是当我觉得正则表达式组正确时,它不起作用。

也:

$text.matches('(?:.|\n)*?<div class="paragrafo-html" style="">(?:.|\n)*?</div>(?:.|\n)*')

给我错误。

您能告诉我我在replaceAll上做错了什么吗?

1 个答案:

答案 0 :(得分:0)

Wiktor Stribizew最后的评论有效!所以:

$text.replaceAll('(?s).*?<div\s+class="paragrafo-html"\s+style="">(.*?)</div>.*', '$1')

谢谢!