質問: メールアドレスが多数含まれた英文があるとします。 このうちメールアドレスのピリオドだけシャープ3つ(###)に置換するには、 正規表現でどのように表現すれば良いでしょうか? 例: <原文> This is my E-mail address. "hello.goodbye@yahoo.co.jp" thank you. <置換後> This is my E-mail address. "hello###goodbye@yahoo###co###jp" thank you.
回答: ちょっと面倒かもしれませんが、僕ならこのように行います。 (秀丸エディタ使用) ▼1回目の置換 「検索文字が見つかりませんでした」と表示されるまで、繰り返し全置換を行ってください。 ・検索文字 ([^\.]+)\.([^\.]*)(?=@) ・置換文字 \1###\2 ▼2回目の置換 こちらも1回目と同じように、「検索文字が見つかりませんでした」と表示されるまで、繰り返し全置換を行ってください。 ・検索文字 (?<=@)([^\.]*)\.([^\.]+) ・置換文字 \1###\2 以上で一応目的は達成できるかと思います。もっと上手な方法もあるかとは思いますが、ご参考になればよろしいかと...。 URLはダミーです。