正则表达式 – grep包括换行符在内的所有字符

我正在使用解析 XML文件
"lalala it's a Sunday {{ Some words here,maybe
a new line }} oh boy"

鉴于grep,如何使用grep来获取“{{”和“}}”中的所有内容.角色无法识别换行符?

目前我有

grep '{{.*}}'

但它只适用于同一行的东西.

一种选择是删除换行符,然后删除grep,如下所示:
cat myfile | tr -d '\n' | grep {{.*}}

但是如果你说这是一个XML文件,为什么不使用一个利用文件固有结构的XML解析器而不仅仅是regexp?

编辑

grep regexp很贪心,你可以使用perl regexp:

cat myfile | tr -d '\n' | perl -pe 's/.*?({{.*?}})/\1\n/g' | grep {{

这应该每行输出一个匹配.如果你有嵌套{{那么这将变得更加复杂.

相关文章

jquery.validate使用攻略(表单校验) 目录 jquery.validate...
/\s+/g和/\s/g的区别 正则表达式/\s+/g...
自整理几个jquery.Validate验证正则: 1. 只能输入数字和字母...
this.optional(element)的用法 this.optional(element)是jqu...
jQuery.validate 表单动态验证 实际上jQuery.validate提供了...
自定义验证之这能输入数字(包括小数 负数 ) <script ...