
パラメータqの部分にマッチさせる正規表現が分かりません。
# $urlの例
http://foo.bar/?q=hoge?&x=0&y=0
http://foo.bar/?q=perl
http://foo.bar/?q=perl+%e6%ad%a3%e8%a6%8f%e8%a1% …
hoge, perl, perl+%e6%ad%a3%e8%a6%8f%e8%a1%a8%e7%8f%beだけを切り出したいのですが、現状は
# hogeしかマッチしない
$url =~ /\?q\=(.+?)&+?$/$1/;
# 不要なパラメータにもマッチ
$url =~ /\?q\=(.+?)&*?$/$1/; # => hoge?&x=0&y=0
となっています。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
/^(q|.*&q)=([^&]+)(&.*|)$/$2/
最後の& がつづいてるかどうかの判別をわすれていた。
No.1
- 回答日時:
1.QueryString 取得
2.&できる
3. 2の結果をループしながら = で区切る
4. 3の結果の 先頭側を 調べる。
をやらずにってことですな。
/^(q|.*&q)=([^&]+)&.*$/$2/
ではいかが?
動作確認していないので参考までに。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
perlのプログラミング 部分入れ...
-
Perlでファイルの末尾から指定...
-
テキストファイルで提出とは?
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
Perlのエラーについてご教授く...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
-
perlの構文でカンマの意味が分...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
この正規表現を教えて!
-
特定の正規表現について教えて...
-
8進エスケープとは
-
【正規表現】コメントアウトさ...
-
正規表現
-
条件にマッチした行数のカウント
-
逆スラッシュを使わずにメタ文...
-
なんで真面目な出会いを求める...
-
正規表現。行頭が○○以外にマッ...
-
Perl 正規表現に関して
-
現在、改行コードを含めた任意...
-
これは大きなお世話ですよね? ...
-
perlで記号除去を行いたいので...
-
正規表現で「高」という文字を...
-
正規表現の o オプションの意味...
-
マッチングアプリで新しくアカ...
-
記号とあらば、1文字でも全て...
-
正規表現-数字
-
何故、日本は未だに数字を3桁...
-
CSVファイルの中で、「 , 」カ...
おすすめ情報