我目前有这个正则表达式(使用多行和dotall标志):
^@@:([a-zA-Z0-9_-]*)\s*^(.*?)^@@
匹配这个:
@@:variable
some nice MarkDown content blah blah
@@
如果声明是文件中的最后一个(字符串),我希望能够省略结束@@标签,这是因为许多文件只有一个声明,因此关闭它的想法似乎是不必要的。我试过这个正则表达式:
^@@:([a-zA-Z0-9_-]*)\s*^(.*?)^(@@|\A)
但它甚至不再与结束标签相匹配。
提前感谢您的帮助。
答案 0 :(得分:0)
我现在有了:
两个错误:
插入符号必须是最后一组中第一个正则表达式的一部分,我需要\ Z不是\ A as \ A匹配字符串的开头而不是结束。
^@@:([a-zA-Z0-9_-]*)\s*^(.*?)(^@@|\Z)