Perlについての質問です。


正規表現なのですが、改行(¥n)が
いくつ続いても必ず一つになる正規表現の
書き方を教えてください。

$str =~ s/\n\n/\n/gs
2回続いた改行をひとつにする。

$str =~ s/\n\n\n/\n/gs
3回続いた改行をひとつにする。

これが、4回だったり、5回だったりした場合、
改行が連続で何回続こうが、一回の改行に置き換える事はできるでしょうか?

回答の条件
  • URL必須
  • 1人20回まで
  • 登録:2007/03/26 20:46:19
  • 終了:2007/04/02 20:50:03

回答(1件)

id:strawhat No.1

strawhat回答回数255ベストアンサー獲得回数212007/03/26 20:55:09

ポイント60pt

量指定子に+を用いて、

$str =~ s/\n+/\n/gs

でどうでしょう。+というのは一個以上何個でもの連続の文字列にマッチします。

http://www.rfs.jp/sb/perl/02/09.html#%E9%87%8F%E6%8C%87%E5%AE%9A...

id:zachouR

ありがとうございました!

うまくいきました!

2007/03/27 17:54:05

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません