-2

我在下面描述的 Perl 中有一个小问题:我有一个这样的文件:

你好朋友->你好(0.2)

你好朋友->你好我的朋友(0.2)

我想只提取箭头“->”之前的短语,这意味着: 你好朋友

4

4 回答 4

1
my ($pre, $post) = split /\s*->\s*/, $line;
于 2013-03-27T10:40:56.417 回答
1

单程:

perl -F'->' -alne '/->/ and print $F[0];' file
于 2013-03-27T10:42:11.337 回答
0

试试这样的事情:

    my $line = "hello friends -> Hello (0.2)";
    if ($line =~ m/([\w\W]+)->([\W\w]+)/) {
        my $property=$1;
        my $value=$2;

        # stuff here
        print STDOUT "property = $property\n";
        print STDOUT "value = $value\n";
    }
于 2013-03-27T10:34:42.540 回答
0

awk 模式下的 Perl

$ perl -F'-' -lane 'print $F[0]' input
hello friends 

hello friends 
于 2013-03-27T10:43:57.183 回答