具体来说,我正在使用Linux命令:
$ find . -regextype posix-extended -regex '<some regex>' ...
我只是想确保我使用的POSIX类型是Perl使用的类型,因为这是我最熟悉的类型。
答案 0 :(得分:10)
Perl为正则表达式定义了自己的标准。例如,有PCRE等系统,它代表Perl兼容的正则表达式。
答案 1 :(得分:8)
Perl的正则表达式引擎是Perl的正则表达式引擎。 perl
定义了Perl。
有关详细信息,请参阅perldoc perlreref。
答案 2 :(得分:5)
Perl使用Perl正则表达式,而不是POSIX正则表达式。您可以自己比较语法,例如regex(7)
。
答案 3 :(得分:4)
Per perldoc perlhist,Perl 0(“分类。不要问。”)使用基本的正则表达式。从1987年12月的Perl 1.000开始,所有版本都使用了扩展的正则表达式(并扩展了那些......)。
答案 4 :(得分:1)
Perl的正则表达式更像是Posix扩展的正则表达式。基本posix正则表达式使用(
和{
来匹配实际字符,\(
和\{
作为特殊字符,但Posix扩展名表达式使用(
和{
与Perl中的含义相同,\(
或\{
与实际字符匹配,与Perl相同。所以posix-extended就是你想要的。