Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
これは私の文字列です:
my $var = "eval(sometext,'|function|65200|url|click|Chargement|margin'.split('|'),0,{}))"
番号 65200 を取得したいのですが、このmy ($key) = $var =~ /eval.*?\|(\d+)\|.*$/正規表現を試しましたが、何も取得できません。
my ($key) = $var =~ /eval.*?\|(\d+)\|.*$/
10 進数で構成される最初の部分文字列だけが必要な場合は、非常に簡単です。
my $var = "eval(sometext,'|function|65200|url|click|Chargement|margin'.split('|'),0,{}))"; my ($num) = $var =~ /(\d+)/; print $num;
出力
65200
アップデート
パイプ文字で囲まれた数字の最初のシーケンスを抽出するには、単に使用します
my ($num) = $var =~ /\|(\d+)\|/;