Regex Perl正则表达式输出不包含字符的行

Regex Perl正则表达式输出不包含字符的行,regex,perl,Regex,Perl,基本上有两种类型的线(简化): “约翰”(2002年) 艾米(1991) 开头可能有选项卡,也可能没有选项卡。我只想得到不包含双引号的行。到目前为止我有 if( /([^\t]*) [\t]+ ^("(.*?)") ([^\t]+ [\ ]* [\(][\d]+[\)])/) 如果我拿出克拉符号,它会抓住带双引号的线条。我希望它做相反的事情,但它不起作用 ^[^"]*$ 使用允许^$在换行符处匹配的修饰符 我最初建议四处看看,但这里不需要 ^((?!").)*$) 使用允许^$在换行符处

基本上有两种类型的线(简化):

“约翰”(2002年)

艾米(1991)

开头可能有选项卡,也可能没有选项卡。我只想得到不包含双引号的行。到目前为止我有

if( /([^\t]*) [\t]+ ^("(.*?)") ([^\t]+ [\ ]* [\(][\d]+[\)])/) 
如果我拿出克拉符号,它会抓住带双引号的线条。我希望它做相反的事情,但它不起作用

^[^"]*$
使用允许^$在换行符处匹配的修饰符

我最初建议四处看看,但这里不需要

^((?!").)*$)
使用允许^$在换行符处匹配的修饰符

我最初建议四处看看,但这里不需要

^((?!").)*$)
我想试试这个(或者我简化得太多了?):

jj@ubuntu:~$cat/tmp/x.txt
“约翰”(2002年)
艾米(1991)
rc@ubuntu:~$perl-ne'除非打印/“/”
我想试试这个(或者我简化得太多了?):

jj@ubuntu:~$cat/tmp/x.txt
“约翰”(2002年)
艾米(1991)
rc@ubuntu:~$perl-ne'除非打印/“/”
试试这个:

if (/^\s*([^"\s]+)\s*\((\d+)\)\s*$/) {
}
试试这个:

if (/^\s*([^"\s]+)\s*\((\d+)\)\s*$/) {
}

如果你已经知道的话

if (/regex/) { ... }
做与你想做的相反的事,不要试图弄清楚
/regex/
的“对立面”是什么。如果
,则使用与
相反的词更容易理解:

unless (/regex/) { ... }
if ( !/regex/ ) { ... }

如果你已经知道的话

if (/regex/) { ... }
做与你想做的相反的事,不要试图弄清楚
/regex/
的“对立面”是什么。如果
,则使用与
相反的词更容易理解:

unless (/regex/) { ... }
if ( !/regex/ ) { ... }

我想你可以用
/“/
作为
/^[^”]*$/
的等价物,我认为您可以使用
/“/
作为
/^[^”]*$/

的等价物,它使用了一种称为正向前瞻的技术,您可以在这里用Perl阅读该技术,以获取字符串中所有正则表达式匹配的数组,使用@result=$subject=~m/^.*$/mg;if(/([^\t]*)[\t]+^(?!.$([^\t]+[\]*[[[\d]+[])/)类似于此??”??没有work@user1224478不,只是简单的regex^(?!).$将只匹配不包含双引号的行“您的regex将实际匹配任何不以双引号开头的行。例如,它将匹配
“\t\“John\”(2002)
。是的,但是,最好对单个字符使用
^[^”]*$
,而对单词使用
^(?:(?!)*$
。它使用一种称为正向前瞻的技术,您可以在这里用Perl阅读该技术来获得字符串中所有正则表达式匹配的数组use@result=$subject=~m/^(?)*美元/毫克;如果(/([^\t]*)[\t]+^(?!).$([^\t]+[\]*[([\d]+[)])/)像那样,它就不会work@user1224478不,它只是简单的正则表达式^(?!).$将只匹配不包含双引号的行“您的正则表达式将实际匹配任何不以双引号开头的行。例如,它将匹配
“\t\”John\”(2002)“
。是的,但是最好对单个字符使用
^[^”]*$
,而对单词使用
^(?(?!)*$
。它需要是Perl吗?
sed'/“/d”inputfile.txt
它需要是Perl吗
sed'/“/d'inputfile.txt
你可以简化(或打高尔夫球)到
perl-ne'/“/| | print”x.txt
少一个字符
grep-v\“x.txt
直立牙签(或折断的梳子):
perl-ne'y |“| | print”x.txt
你可以简化(或打高尔夫球)到
perl-ne-ne'/“/| | print'x.txt
少一个字符
grep-v\”x.txt
直立牙签(或折断的梳子?):
perl-ne'y |”| | | print'x.txt