秀丸の正規表現の質問です。


元の文章
△これはテスト文です■

これを以下のように変えたい

■これはテスト文です△

■△をそれぞれ普通に置換すればよいように見えますが、条件がありまして、別の箇所にも■△が大量に入っています。

ですので、△から始まり、■で終わる行のみを置換したいのです。
これはテスト文です というもじはそのまま残します。

できますでしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2008/03/11 13:40:16
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:mutsuju No.1

回答回数551ベストアンサー獲得回数35

ポイント35pt

秀丸エディタVer7.04で試しました。

検索文字列 ^△¥f.*¥f■$

置換文字列 ■¥1△

正規表現 チェックON で (¥は半角で入力して下さい)

置換前

△これはテスト文1です■

△これはテスト文aです○

△これはテスト文2です■

△これはテスト文イです○

置換後

■これはテスト文1です△

△これはテスト文aです○

■これはテスト文2です△

△これはテスト文イです○

となります。

http://hide.maruo.co.jp/software/hidemaru.html

id:clinejp

解決しました

ありがとうございます。

2008/03/11 13:39:56
id:proganochelys No.2

回答回数75ベストアンサー獲得回数6

ポイント35pt

タグ付き正規表現を使ってできましたよ。

http://www.ceres.dti.ne.jp/~sugiura/hidemaru/qa/4_tagreg.html

このページでは、"\f"という記号を使っていますが、現在のバージョンでは、一般的な正規表現と互換のある"()"も使えるようです。


具体的には、

検索 → ^(△)([^■]*)(■)$

置換 → \3\2\1

とします。

行の頭に (^)

"△"という文字があって(これが\1)

続いて"■"以外の文字が0個以上続き(これが\2)

"■"という文字があって(これが\3)

そこが行末

という部分にヒットし、

\1と\3をひっくり返す

と置換されます。

いかがでしょうか。

id:clinejp

解決しました

ありがとうございます。

2008/03/11 13:39:59

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

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

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

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

回答リクエストを送信したユーザーはいません