
文字列 $a に、文字列 $b が含まれているかどう確認したいと思っています。
$a = "abcdefg"; $b = "cde" なら「真」としたいです。
(要するに、シェルの case や fgrep に似たことをしたい)
ただし、文字列には記号が含まれている可能性もあるため、
正規表現も使いづらい(?)です。
具体的にやりたいことは、$a にはコンマ区切りのメールアドレスのリストが入っていて、
$b のメールアドレスが $a のリストに含まれていない場合のみ、$b を $a似追加すると
いうことがやりたいです。
何か良い方法はないでしょうか?
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
表示がくずれるので空白2文字を全角空白で書いていることに注意
use strict;
use warnings;
use feature 'say';
my $text = 'hello :-)';
my $word = ':-)';
if ( $text =~ m/\Q$word\E/ ) {
say 'matched'; # matched
}
my $quoted = quotemeta $word;
say $quoted; # \:\-\)
if ( $text =~ m/$quoted/ ) {
say 'matched'; # matched
}

No.2
- 回答日時:
$aがコンマ区切りなら、splitを使って配列にすれば、個々での比較が楽になります。
これなら何も考えずにできる一番楽な方法だと思います。効率はあまりよくないですが。後はjoinを使ってコンマ区切りに戻してやって下さい。お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
openoffice calcで#DIV/0! の...
-
メモ帳からエクセルにセル区切...
-
(エクセル)特定のスペースを...
-
CSVの定義
-
3桁ごと?4桁ごと?コンマの...
-
CSVファイルの中で、「 , 」カ...
-
秀丸マクロ(条件で改行を入れたい)
-
ASPでCSVを出力させたいです
-
メールの発信者の中にカンマが...
-
エクセルVBAのヒントをください
-
データグリッド内の数値をカン...
-
エクセルで数値を全角文字(カ...
-
文字コードの%E3%80%とは何です...
-
フォントの色を保持したままセ...
-
住宅にカナを入力する際に丁目...
-
いまスマホからカードの申込み...
-
「一角」って何でしょうか
-
perlで文字列を短く(圧縮)し...
-
数字を全角で書くのは何が悪い...
-
エクセルにMicrosoft Barcode C...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
何故、日本は未だに数字を3桁...
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
EXCELからCSVにすると余計なカ...
-
Excelについて質問です。 セル...
-
WORDで改ページすると時々グレ...
-
エクセルにペーストする際にカ...
-
CSVの定義
-
マクロを使ってフォルダー内に...
-
カンマ区切りの数字をCSVフ...
-
データにカンマが入ったCSVデー...
-
[VBA][Excel]クリップボードか...
-
JPY ¥1,500.00は日本円でお幾ら?
-
エクセル:桁区切り「カンマ」...
-
3桁ごと?4桁ごと?コンマの...
-
EXCELの文字が指数になる
-
数字が全角、コンマなし
-
カンマ区切りでないテキストをc...
-
エクセルの区切り位置の設定方法
-
Excel 住所の分割(文字数制限...
おすすめ情報