1

これは私の文字列です:

my $var = "eval(sometext,'|function|65200|url|click|Chargement|margin'.split('|'),0,{}))"

番号 65200 を取得したいのですが、このmy ($key) = $var =~ /eval.*?\|(\d+)\|.*$/正規表現を試しましたが、何も取得できません。

4

1 に答える 1

5

10 進数で構成される最初の部分文字列だけが必要な場合は、非常に簡単です。

my $var = "eval(sometext,'|function|65200|url|click|Chargement|margin'.split('|'),0,{}))";

my ($num) = $var =~ /(\d+)/;

print $num;

出力

65200

アップデート

パイプ文字で囲まれた数字の最初のシーケンスを抽出するには、単に使用します

my ($num) = $var =~ /\|(\d+)\|/;
于 2013-09-30T18:40:40.437 に答える