正規表現に関する質問です。


今日は、晴れです。
今日は、祝日で、晴れです。
今日は、祝日で、大安で、晴れです。

以上の文の「、晴れです。」を「す。」に置換する正規表現を知りたいです。
置換した場合、上の文が

今日はす。
今日は、祝日です。
今日は、祝日で、大安です。

になる感じです。

なんかわかりづらいですが、よろしくお願いします。

回答の条件
  • 1人1回まで
  • 13歳以上
  • 登録:2015/03/18 23:15:31
  • 終了:2015/03/18 23:48:53

ベストアンサー

id:a-kuma3 No.1

a-kuma3回答回数4363ベストアンサー獲得回数18002015/03/18 23:45:33

ポイント100pt

質問のままだと、正規表現というのでもなく、

置換前:、晴れです。
置換後:す。

で、済んでしまうのだけれど、「、晴れです。」の「す。」を使いたいということでしょうか。

であれば、「後方参照」ってのを使います。

sed だと、こんな感じ。

s/、晴れで\(す。\)/\1/

# sed なんて使わねえか :-)

javascript だと、こんな感じ。

var s = '今日は、祝日で、大安で、晴れです。';
s = s.replace(/、晴れで(す。)/, '$1');

java や ruby などのような たいていの言語では、(API は違うものの)後方参照には $ を使います。

id:pxi13773

まさにそういう感じです。
わかりづらくてすいませんでした。

2015/03/18 23:49:53
id:a-kuma3

いえいえ :-)

使っているツールによって、正規表現は微妙に違うので、「○○を使って」というのを書いた方が、ピンポイントの回答が付くと思います。

2015/03/18 23:51:59

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

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

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

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

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