- 271 名前:名無しさん@お腹いっぱい。 [03/05/30 21:59.net]
- 文字列中、丸括弧(全角、半角問わず)で閉じられた部分を取り出す表現を考えているけど、うまくマッチしてくれない。
(丸括弧の中に丸括弧は含まない。Perlの正規表現を使用) $string = '(22(1)'; if($string =~ /[((]([^()()]*)[))]/){ print $1; } else{ print "No match.."; } この場合は"1"がマッチするのを期待しているのだけど、なぜか"22"の部分がマッチした。 OS(UNIX/WinXP)、Perlのバージョン(5.0/5.8)の異なる環境で同じことを確認したけど、結果は変わらず。 さらに、文字コード(Shift-JIS/EUC)の違いでも、結果は変わらなかった。 "1"をマッチさせる別の表現はないですかね? # 全角"("の中にどうも半角")"の文字が隠れてるのかなぁ?(あくまでも推測)
|

|