WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:正規表現を教えてください

よね [WriteDate : Wed Apr 18 00:19:03 2001]

$str = "abcxxxabcyyyabc";
$str =~ s/abc(.*)abc/$1/;

で xxxabcyyy でなく、xxx を取る方法を教えてください。


ドラ [WriteDate : Wed Apr 18 01:01:02 2001]

$str =~ s/abc(.*)abcyyyabc/$1/;
ってのは無しですよね(^^;;;;

@buf = split(/abc/,$str);

print @buf[1] . "\n";

という形も無きにしもあらずですが・・・・・


andi [WriteDate : Wed Apr 18 01:19:10 2001]

$str =~ s/abc(.*?)abc/$1/;


andi [WriteDate : Wed Apr 18 01:20:26 2001]

$1でなく$strをxxxにするなら
$str =~ s/.*?abc(.*?)abc.*/$1/;
とか。


Nobu3 [MAIL] [URL] [WriteDate : Wed Apr 18 13:18:28 2001]

他にも
($xxx) = $str =~ /abc(.*?)(?=abc)/;
ってのもありですか。

ま、最少マッチ(でしたっけ?)の「.*?」が決め手なんでしょうね。
http://www.parkcity.ne.jp/~chaichan/src/perl06.htm#seiki2
にそのへんが書いてありますね。


Nobu3 [MAIL] [URL] [WriteDate : Wed Apr 18 13:19:42 2001]

あ、ちなみに

($xxx) = $str =~ /abc(.*?)(?=abc)/;

では、$xxxに「xxx」が入ります。


yu-ji [WriteDate : Wed Apr 18 18:57:26 2001]

便乗質問させてください

xyabcxyxyxyxyxyxydefxy

のような場合、abcとdefにはさまれたxをXにすることってできます?

xyabcXyXyXyXyXyXydefxy

のように・・・


andi [WriteDate : Wed Apr 18 19:18:30 2001]

$_ = 'xyabcxyxyxyxyxyxydefxy ';
1 while s/(abc.*)x(.*def)/$1X$2/;

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]