[英]Regex match string or end of string
我目前有这个正则表达式(带有多行和dotall标志):
^@@:([a-zA-Z0-9_-]*)\s*^(.*?)^@@
符合以下条件:
@@:variable
some nice MarkDown content blah blah
@@
如果声明是文件(字符串)中的最后一个,我希望能够省略@@标记,这是因为许多文件只有一个声明,所以关闭它的想法似乎是不必要的。 我试过这个正则表达式:
^@@:([a-zA-Z0-9_-]*)\s*^(.*?)^(@@|\A)
但是它甚至不再与结束标记匹配。
在此先感谢您的帮助。
我现在知道了:
两个错误:
插入号必须是最后一组中第一个正则表达式的一部分,我需要\\ Z而不是\\ A,因为\\ A匹配字符串的开头而不是结尾。
^@@:([a-zA-Z0-9_-]*)\s*^(.*?)(^@@|\Z)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.