文字列の一部をはいまたはいいえの答えに一致させようとしています。文字列は次のいずれかになります:'{"valid_js":"yes"...'
または'{"valid_js":"no"...'
. 「はい」または「いいえ」を取得しようとしています
次のようなものを使用できますか:
/:."yes"/g
それとももっと複雑なものが必要ですか?
このようなものを試してみてください...
if (m/"valid_js":"(yes|no)"/)
{
# At this point $1 will contain either yes or no
if ($1 eq 'yes')
{
# Answer is yes
}
else
{
# Answer is no
}
}
これは正規表現の一般的な形式です:
valid_js["]:["](yes|no)["] -> $1
その正規表現を使用して、一致または置換できます。
これはあなたを助けるはずです:
$input = '{"valid_js":"yes"...';
if (($input =~ m/"valid_js":"(.*?)"/) && ($1 eq 'yes')) {
print "1: yes\n";
}
$input = '{"valid_js":"no"...';
if (($input =~ m/"valid_js":"(.*?)"/) && ($1 eq 'yes')) {
print "2: yes\n";
}
ここでコードをテストできます。