
No.2ベストアンサー
- 回答日時:
裏技っぽいんですが,
if ($text =~ $pattern) { ... }
でよかったりして. あとで見たときに困りそうですが.
この回答への補足
お礼と補足が逆になってしまいましたが、
if ($text =~ $pattern) { ... }でいけました!
本当にありがとうございます!
補足としては$patternがファイルから読み込んだ文字列であり、
改行コードが含まれていたため比較してもひっかからなかったというのもありました。
($patternに文字列を入れた後、改行コードを削除したら大丈夫でした。)

No.1
- 回答日時:
>「$pattern」を変数として認識させるにはどのようにすればよいのでしょうか?
if ($text =~ /$pattern/) { ... }
で大丈夫ですよ。
ただし、$pattern に「\」などの記号を入れる場合は、注意が必要です。例えば、
if ($text =~ /\s+/) { ... }
としたい場合は、
$pattern = "\\s+"; # \が2つ必要
if ($text =~ /$pattern/) { ... }
としなければなりません。
上の問題ではないときは、うまくいかない$textと$patternの情報を提示いただければ、何かわかるかもしれません。
この回答への補足
回答ありがとうございます。
上下いれかわってますが・・・
$patternがファイルから読み込んだ文字列であり、
改行コードが含まれていたため比較してもひっかからなかったようです。
さらにTacosanの //を使わない業を使用したら$patternが文字列として認識されました。
回答ありがとうございます。
すみません。もう自宅に帰ってきてしまったので、
詳細の情報はすぐには書けませんが、
あるテキストファイルから1行ずつ読み込み、
$patternに格納した後、それが$text内に含まれるかをチェックしようとしています。
($patternに格納するものには「\」などのエスケープが必要な文字はありません)
EOFまで読み込むため、ループにて制御し、
変数による比較を行わなければならないのですが、
変数を使う>$を頭につける>認識しない!という感じだと思っているのですが、他に理由などあるのでしょうか。
少ない情報で申し訳ありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelのVBAで文章にある複数の...
-
円頓章を現代語訳して下さい。
-
XMLファイルのattribute値がう...
-
[VB6] SQLの作成について
-
テキストボックスかラベル上の...
-
vc++のAPI(dll)の引数をVBAでう...
-
レコードセットにnullの場合
-
C言語のサフィックスについて
-
パーソナルXLSBのfuctionを呼び...
-
VBA public変数はどのようなこ...
-
二点の座標から距離や角度を求...
-
【VB6.0】 あるフォームから他...
-
VBAでcallで呼び出したsubを終...
-
visual basic初心者です。 visu...
-
タイムアウトする仕組みを作りたい
-
VB.NETでのイベントの途中終了
-
VBAで入力数値について
-
リストビューの列ヘッダーの幅...
-
String型の値にスラッシュをつ...
-
VBA テキストボックスで計算
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスかラベル上の...
-
ExcelのVBAで文章にある複数の...
-
RichTextBoxで指定行の色を自動...
-
vba 日本語以外を抽出について
-
DTPicker テキストクリアの方法
-
VBAのループ
-
助けてください!
-
XMLファイルのattribute値がう...
-
アクセスのフィールドに値をペ...
-
画面の繰り返し機能について
-
VB6→VS2005アップグレード後
-
WORd VBA 文章を単語に分解する
-
文字列を配列に…。
-
cshスクリプト内での”ヒアドキ...
-
VC++のプログラミングについて
-
EXCEL VBA UserForm のご質問
-
VBAでフィールドを配列読み
-
[VB6] SQLの作成について
-
Can you text me your business...
-
perlにおける正規表現で、パタ...
おすすめ情報