grep的基本(BRE)和扩展(ERE)语法记录在节点/正则-Expressions.html中,PCRE在man pcresyntax上进行了总结,但没有明确的比较。grep的基本/扩展表达式与PCRE (-P)正则表达式有什么不同?
发布于 2021-06-11 21:46:52
我对http://www.greenend.org.uk/rjk/tech/regexp.html主要语法和功能差异的研究
.不匹配空字节和换行 (但与--null-data一起使用时确实匹配换行符),而Perl则匹配除\n之外的所有东西。[...]定义POSIX括号表达式,而Perl使用“字符”类。我对细节不太确定。请参阅http://www.greenend.org.uk/rjk/tech/regexp.html#bracketexpression?、+、{、|、(和)失去了其特殊意义;相反,请使用反斜杠的版本\?、\+、\{、\|、\(和\)。来自node/Basic-vs-Extended.html。ERE与PCRE语法匹配。\w和\W与[[:alnum:]]和[^[:alnum]]相同,而Perl使用字母数字和下划线。\<和\>,用于开始和结束word。Perl支持更多的附加功能:
re{...}?的“非贪婪{}”\A、\C、\d、\D、\G、\p、\P、\s、\S、\X。\Z,\z.(?#comment)(?:re)分组,shy分组+修饰符(?modifiers:re)(?=re)和(?!re),查找和负回顾(?<=p)和(?<!p)(?>re)(?(cond)re)man pcresyntaxhttps://stackoverflow.com/questions/67943781
复制相似问题