No.4ベストアンサー
- 回答日時:
> qqは調べたらダブルコーテーションだと書いてありましたが
qqがそのままダブルクォーテーションを意味するわけではなく、「引用の一般化表記」というやつです。
ダブルクォーテーションで囲むのと同じ結果になる、別の書き方です。
なぜそんなものがあるのか、普通にダブルクォーテーションで囲めば良いのでは?
と思うかもしれませんが、たとえば、
<a href="$url" target="_blank"><img src="$button_img" alt="Link" border="0"></a>
なんていうデータを変数に代入したい場合、大変面倒ですよね。
$anc = "<a href=\"$url\" target=\"_blank\"><img src=\"$button_img\" alt=\"Link\" border=\"0\"></a>";
いちいちこう書くよりも、
$anc = qq!<a href="$url" target="_blank"><img src="$button_img" alt="Link" border="0"></a>!;
と書いた方が楽ですし見やすいです。
ちなみに、囲み文字に「 ! 」を指定してありますが、個人的にちょっと見にくいような気がします。一般的に
qq|~|
qq/~/
が多いのではないでしょうか。
また、qq以外にも、
q|~|
qx|~|
qw|~|
があります。
それぞれの意味はご自分で調べられたほうが理解が深まるかと思います。
No.3
- 回答日時:
参考URLの
Quote and Quote-like Operators
以下を参照してみてください。
参考URL:http://perldoc.jp/docs/perl/5.6.1/perlop.pod
No.2
- 回答日時:
追記。
#1です。
下記に qq に続く文字は半角記号であれば何でもいいと書きましたが、カッコの類の場合は扱いが変わるようです。
print qq[abc[;
print qq(abc(;
こんなこともできるのかと思ったら、カッコ記号の場合は、
print qq[abc];
print qq(abc);
こういうふうに囲まないと駄目みたいです。
(言ってる意味が分からなかったら無視して構いません(^_^; 文字列を扱うのに qq コマンドを使うことは滅多にありませんから)
No.1
- 回答日時:
qqは、それに続く文字を「囲み記号」として扱うことを表す文字列表記コマンドです。
たとえば、qq!! の場合、"!" を囲み記号とした空文字列ということになります。
このとき qq に続く文字は半角記号であればなんでもよく、たとえば
print qq,abc,;
とすると、"," を囲み記号として扱うので、結果として画面には "abc" と表示されます。
これは、一般的な "" による文字列では、" を \" と表記しなければいけなかったりと色々面倒だから作られたものです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
16進の10進変換について
-
c言語 16進数の2進数への変換
-
VBAのNext forでエラーが出て困...
-
数値かどうかの判定方法
-
シェルスクリプト+perl
-
Pythonの np.indicesに関する質...
-
C言語
-
変数名に変数を使用
-
Perl でワードファイルのヘッダ...
-
Python3
-
JSONで文字列が長い時
-
Application.ScreenUpdating = ...
-
テキスト入力後、エンターを押...
-
VBAでPDFのコピーとリネームを...
-
formで特定のinputを送信しない...
-
C言語のflagの使い方が分かりま...
-
FindFirst を複数条件で検索
-
セレクトボックスのselected属...
-
実行時エラー 3020の対策
-
文字の横にプルダウンを表示さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
16進の10進変換について
-
pythonで演算子を変数に代入す...
-
【至急!!!】python言語で本を見...
-
pythonの*
-
c言語 16進数の2進数への変換
-
awkの正規表現での最左最短マッ...
-
数値かどうかの判定方法
-
関数「exists」と「defined」の...
-
シェルで、ランダム関数を変数...
-
I2C接続のLCDディスプレイを使う
-
シェルスクリプトで、空白(ス...
-
perでメールが送信出来ない場合...
-
UWSCのSELECT文の記述方法
-
int(input("○○"))の使い方
-
switch文のエラーについて
-
pythonで改行を含めてfindする方法
-
シェルスクリプト+perl
-
PythonでUTF8の文字列をリスト...
-
少数点以下の桁数について
-
qq!!の意味を教えてください。
おすすめ情報