0

で区切られたいくつかの文の途中に文字列を追加する必要があります\n。例えば:

INPUT          OUTPUT
V2+count    -> V2+came+count
V6+num      -> V6+came+num
V10+hi+town -> V10+came+hi+town

N2+hello    -> N2+went+hello
N7+time     -> N7+went+time

これまでに書いたコードは

if ($new=~/\(came\)\|\(went\)/) {
    my $prev_tag = $`;
    if ($prev_tag5=~ /\(V\d+?\)?\+$/) {
        $new=~ s/\(came\)\|//;
    } else {
        $new=~s/\(went\)\|//;
    }
}
4

1 に答える 1

4

私のアドバイスは、単純に保ち、両方のケースを並行して処理しようとしないことです。したがって、一致するすべてのケースに「来た」を追加することから始めて、一致するすべてのケース/V\d+/に「行った」を追加します/N\d+/

$new =~ s/(V\d+\+)/$1came+/;
$new =~ s/(N\d+\+)/$1went+/;
于 2012-09-14T10:28:30.690 に答える