質問 |
||
| 質問者:keeeeeeeen | perlでの正規表現について教えてください。 | |
|---|---|---|
困り度:
|
たとえば、 $A = 'aaa/bbb/ccc/ddd/eee/fff/ggg' というものがあったときにperlの正規表現でddd/のすぐ後の部分を抜き取って違う変数に入れたいのですが、それを正規表現で切り取りたいのですが、どうしたらいいかわからないです。 初歩的な質問ですが、お答えいただければ幸いです。 よろしくお願いします。 |
|
質問投稿日時:08/04/10 10:36 質問番号:3936994 |
||
回答 |
|
| 回答者:hitsubunnu | $A = 'aaa/bbb/ccc/ddd/eee/fff/ggg'; $A =~ s/(\w+\/){4}//g; print $A; # 結果eee/fff/ggg |
|---|---|
| 種類:回答 どんな人:経験者 自信:自信あり |
|
| |
回答日時:08/04/11 16:58 回答番号:No.3 |
|
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答 |
|
| 回答者:moon_piyo | こんにちは $A = 'aaa/bbb/ccc/ddd/eee/fff/ggg'; ($foo) = $A =~ m~ddd/(.*)$~; print $foo; |
|---|---|
| 種類:回答 どんな人:一般人 自信:参考意見 |
|
| |
回答日時:08/04/10 11:25 回答番号:No.2 |
|
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答 |
|
| 回答者:steel_gray | 「すぐ後ろ」、ってのは例で言うと eee なのか eee/fff/ggg なのかどっちでしょう? 前者なら $A =~ m'ddd/(.*?)/'; $result = $1;# → eee 後者なら $A =~ m'ddd/'; $reuslt = $';# → eee/fff/ggg |
|---|---|
| 種類:アドバイス どんな人:一般人 自信:参考意見 |
|
| |
回答日時:08/04/10 11:20 回答番号:No.1 |
|
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |