2021/10/28の「お客様の声」は解決しておNo.09655
moyabu さん 21/11/16 12:10
 
すみません.2021/10/28の秀丸ファイラーの「お客様の声」を投稿した者です.

秀丸ファイラー購入の目的は,
>1.同一フォルダ内の複数のファイル名を一括変換して連番を付けたい.
この件,満足してファイラーを利用して「一括変換して連番付き」しております.

>2.複数のcsvファイルの","を"\t"に一括変換してtsvファイルにしたい.
は「一括変換」した後での秀丸エディタのマクロ作成の話でした.

お騒がせしました.
この秀丸ファイラー,もっと早くから使えばよかったと今になって思っております.

(追加ですが)
csv<->tsv の変換の件,例えばcsvカラムの中にさらに","や\tが入っていたり(そ
の逆も)して,意外に厄介だなと思っています.これは現在困っていることではない
ので,スルーして下さい.私もスルーしてますので.



>2021/10/28 MOさん
>(目的)
>1.同一フォルダ内の複数のファイル名を一括変換して連番を付けたい.
>2.複数のcsvファイルの","を"\t"に一括変換してtsvファイルにしたい.
>
>秀丸エディタのマクロを作っていたけど,(自分の力では)意外と厄介そうなので,
>こちらを購入しました.これでできそうに思ったので(適当かな).
>
>サイトー企画からコメント:
>ファイル名の一括変換や連番は、「ファイル名の変更(一括)」で可能です。
>","を"\t"に一括変換することは秀丸ファイラーClassicの機能としてはできません。
>このページでは相互のやりとりができないので、サポートのページより、サポート
>会議室かメールでお問い合わせいただけたら幸いです。

[ ]
RE:09655 2021/10/28の「お客様の声」は解No.09656
秀丸担当 さん 21/11/16 13:52
 
投稿ありがとうございます。
csvの","を"\t"に置換するにはのは、ダブルクォーテーションで囲むものが無ければ
秀丸エディタで置換(またはgrepして置換)するだけですが、ダブルクォーテーショ
ンで囲むことも想定した場合、ご指摘の通り厄介です。

正規表現で区切りの","だけを書ける方法がありそうかと思ってGoogle検索してみた
のですが、例えば
,(?=([^"]"[^"]")*(?![^"]"))
という書き方のテクニックが紹介されていました。
でも試してみたら、全てのパターンはカバーしきれない感じでした。
例えば以下のようなテキストだと失敗します。
"A,A","B","C,C"
どなたかうまい書き方をご存知でしたら教えてもらえると助かります。

設定が必要ですが、秀丸エディタであれば、「"」〜「"」を色付けしておくと、それ
を簡単に除外できるので、深いことを考えずにやる方法があります。
[その他]→[ファイルタイプ別の設定]→[デザイン]→[複数行コメント]で、「ユー
ザー定義」にして、例えば「"」〜「"」までを「文字定数」として定義します。
こうしておくと、検索ダイアログや置換ダイアログで「追加の条件」をONにして、
「文字定数」「を除く」にしておくと、""で囲まれた部分は除外されます。
この状態であれば","を"\t"に置換するだけでできるようになります。

追加の条件は検索ダイアログ等を出すたびにOFFになるので注意が必要です。
[その他]→[動作環境]→[検索]→[検索ダイアログ]→[追加の条件の状態を覚える]に
しておくと、ON状態を記憶します。

[ ]
RE:09656 2021/10/28の「お客様の声」は解No.09657
moyabu さん 21/11/16 17:58
 
こういうやり方もあるんですね.なるほど....
ご教示ありがとうございます.


>設定が必要ですが、秀丸エディタであれば、「"」〜「"」を色付けしておくと、そ
>れを簡単に除外できるので、深いことを考えずにやる方法があります。
>[その他]→[ファイルタイプ別の設定]→[デザイン]→[複数行コメント]で、「ユー
>ザー定義」にして、例えば「"」〜「"」までを「文字定数」として定義します。
>こうしておくと、検索ダイアログや置換ダイアログで「追加の条件」をONにして、
>「文字定数」「を除く」にしておくと、""で囲まれた部分は除外されます。
>この状態であれば","を"\t"に置換するだけでできるようになります。
>
>追加の条件は検索ダイアログ等を出すたびにOFFになるので注意が必要です。
>[その他]→[動作環境]→[検索]→[検索ダイアログ]→[追加の条件の状態を覚える]
>にしておくと、ON状態を記憶します。

[ ]