• ベストアンサー

秀丸の正規表現で文字列を切り取りしたい

秀丸で文字列の切り取りをおこないたいと思います。例えば、下記のような文字列があるとします。 あいうえお,abcde,かきくけこ fghij,さしすせそ,klmnopq やりたいことは、2つです。 1. 1つめのカンマまでの抜き出し。上記の場合、下記の文字列を抜き出し。 あいうえお fghij 2.1つ目のカンマから2つ目のカンマまでの文字列の抜き出し。上記の場合、下記の文字列を抜き出し。 abcde さしすせそ 上記の条件に検索でヒットさせる方法はわかるのですが、はたして文字列の切り取りなんてできるのか?という疑問があります。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

> あいうえお,abcde,かきくけこ > fghij,さしすせそ,klmnopq <snip> > あいうえお > fghij に関しては、 検索:^([^,]+),.+ 置換:\1 > abcde > さしすせそ は、 検索:^(([^,]+,){1})([^,]+),.+ 置換:\2 (ここで、2 つ目以降は、{1} や \2 の数値を増やす) の置換作業で出来ます。 ただ、これは最新版 Ver.8.03 であることが前提です。 古いと、上記の正規表現に未対応のことがあります。 更に、最新版なら、CSV モードを使って、カラム単位で選択、切り取りをした方が速いでしょう。 最後に、秀丸エディタでやる限り、最新版であっても、どちらの方法でも限界があり、上記のような CSV 形式であっても、セル内に ・改行 ・「"」で挟むことで入力可能な「, (カンマ)」 がある場合は、上手くできません。

mellow91
質問者

お礼

ご回答ありがとうございます!!正規表現勉強になります!あと、秀丸のV8を使っていますが、CSVモードがあるなんて知りませんでした。今試したところ、やりたいことができました!!CSVである列を切り取りたかったのですが、これでやると一発でした。本当にありがとうございます!!

その他の回答 (1)

  • sksu003nh
  • ベストアンサー率69% (89/128)
回答No.1

 たぶんマクロを使えば可能です。  使うコマンドは   beginsel   endsel   searchdown   cut   paste   カーソル移動系のコマンド  ぐらいだと思います。  本当はサンプルコードを載せればいいのですが、それほど難しいものでもないので秀丸のメニューの「マクロ」にある「マクロヘルプ」を読んで自分で書いてみましょう。

mellow91
質問者

お礼

ご回答ありがとうございます!!マクロは使ったことがないので勉強になります!後で試してみたいと思います!ありがとうございました!!

関連するQ&A