0

1 行の文字列に対して複数の一致を抽出する必要があります。行は次のようになります。

./staticRoutes.10.10.30_VC;./staticRoutes.10.10.40_FEEDS

各ファイル名を抽出して @array に入れる必要があります。行のファイル名は;で区切られています。. したがって、上記の例では、staticRoutes.10.10.30_VCstaticRoutes.10.10.40_FEEDSだけを抽出したい

どんな助けでも大歓迎です。

どうもありがとう

ジョン

4

2 に答える 2

2
my $some_string = './staticRoutes.10.10.30_VC;./staticRoutes.10.10.40_FEEDS';
my @array = split /;/, $some_string;
于 2011-12-21T08:44:01.030 に答える
0

これは正規表現バージョンであり./、結果に先頭が含まれていません。これが価値がある場合は、これを使用できます。それ以外の場合は、分割ソリューションをお勧めします。

my $s = "./staticRoutes.10.10.30_VC;./staticRoutes.10.10.40_FEEDS";
my @res = $s =~ m~[^/]+(?=;|$)~g;

これは、文字列 (部分)の前または末尾/(部分)ではない任意の文字と一致します。[^/]+;(?=;|$)

于 2011-12-21T08:57:11.080 に答える