文字変換に便利なツールはありませんか?
自費出版以外にも役立つテキスト整形ツール「SED」で複数文字の一括置換を紹介します。
文字を1対1で置換するのはワープロソフトやエディタソフトでも簡単に出来ます。
しかし、1対1ではアルファベットの小文字を全部大文字に置換したい時、a→A、b→B…と26文字分の置換が必要です。
もし、小文字に半角と全角が混在していたら、作業は倍かかります。
また、名簿の全員の名前の後ろに「様」を入れたい、あるいは、算用数字を縦書き用の漢数字に変更したいと言う時もあります。
こんな作業の時に、SEDは大活躍します。
ページの多い文書でもわずか2~3秒で置換作業を終えてしまいます。
A4・10ページくらいなら1秒もかかりません。
その速さには目を見張るものがあり、感動的ですらあります。
そしてSEDはこんなことまで、と思うような置換もやってのけます。
①アルファベットの小文字→大文字、全角→半角(その逆)
②半角カタカナ(アスキー文字)→全角カタカナ(その逆)
③全角数字→半角数字(その逆)
④数字の1桁を全角に、2桁以上を半角に
⑤カンマの前の数字のみ半角に
⑥全角カッコ→半角カッコ(その逆)、不等号記号→山パーレン
⑦2つ以上続いたスペースのみ削除
⑧エクセルデータをタブ区切りテキスト変換した時のタブマークを改行マークに
⑨文字のない空き行を削除
⑩句点(。)で終わる行以外の改行を削除
等々
上記①~⑩の置換を1回の作業で一瞬で済ませてしまいます。
作業の能率が非常に良くなることは、間違いありません。
自費出版以外に、印刷関係や出版関係・編集関係にも役立つことと思います。
UNIXから移植されたテキストツールのSEDは、大変便利に使えるお得なフリーソフトです。
そんな優れもののSEDの中身は何か。それは「スクリプト」と言われるプログラムの一種です。
このスクリプトはテキストで記述されていますので、メモ帳でも簡単に作れます。
例えば、「A」を「B」に置換する時のスクリプトは、
s/A/B/g
たったこれだけです。この一行をメモ帳で作って、ファイル名を
「AtoB.SED」
とします。そして、置換ファイル名が
「元.TXT」
だとしたら、入力するコマンドは
SED -f C:¥SED240¥AtoB.SED A:¥元.TXT > A:¥済み.TXT
です。
入力してエンターキーを押すと、「済み.TXT」の中の「A」は全部「B」に置換されています。
コマンドを見てお分かりのように、ここで説明する「SED240」というソフトはMS-DOS上で動きます。
今では、DOS窓を開いてコマンドを入力する人はだいぶ少なくなったようです。
DOSのコマンドを使ったことの無い人は、この機会に知識を増やしてみてはいかがでしょうか。
SED240は、「SED Ver.2.40」のことです。このソフトはMS-DOSのためか、もうソフト配信大手のVectorでも見当たりません。
ご希望の方は「SED240.ZIP」をダウンロードしてください。
それでは、SED240の使い方を説明します。
① フォルダの置き場所
SED240の実行ファイルが入ったフォルダ(フォルダ名:SED240)はどこに置いてもいいのですが、コマンド入力が簡単に済むようにCドライブのすぐ下(第1階層)に入れます。
フォルダの場所は C:¥SED240 です。
(C:(Cドライブ)の¥(中)のSED240フォルダの意味)
「入れる」は文字通りフォルダをドラッグしてCドライブの中に移すだけです。今どきのインストールの必要はありません。
[スタート]→[プログラム]→[MS-DOSプロンプト]を選択します。
デスクトップに真っ黒な画面が現れます。左上隅に
C:¥WINDOWS> (>をプロンプトと呼びます)
という文字が見えます。
XPの場合
[スタート]→[すべてのプログラム]→[アクセサリ]→[コマンド プロンプト]を選択します。
C:¥Documents and Settings●●>
(●●は各パソコンにより設定文字が入る)
これがDOSのプロンプト画面で、命令を待っている状態です。
まずはディレクトリを変更します。
C:¥WINDOWS>CD C:¥SED240
(CDはChange Directryの意)
XPの場合
C:¥Documents and Settings¥●●>CD C:¥SED240
と入力してください。すると画面は
C:¥SED240>
と変わります。
この後に、コマンドを入力してください。
C:¥SED240>SED -f C:¥SED240¥変換.SED A:¥元.TXT >
A:¥済み.TXT
(コマンド解説)
SED…………SED.EXEという実行ファイルを実行しなさい。
-f…………置換にスクリプトファイルを使用しなさい。(オプション)
(fはファイルのf、ここだけは小文字を使います)
C:¥SED240¥変換.SED
……置換ファイルはCドライブの第1階層にあるSED240フォ
ルダの中の「変換.SED」を使用します。
A:¥元.TXT……変換元ファイルはAドライブにある「元.TXT」です。
>……………変換先は~。
A:¥済み.TXT……変換後のファイルをAドライブに「済み.TXT」として
保存します。
コマンドを入力したら、エンターキーを押して置換完了です。
DOS窓を終了し、置換済みテキストを開いて確認して下さい。
① フォルダ名・ファイル名の文字数に、MS-D0Sの制約
それは、「ファイル名8バイト.拡張子3バイト」ということです。
半角1文字は1バイト、全角1文字は2バイトで作られています。
従って、フォルダ名・ファイル名は半角だけでしたら8文字、全角だけでしたら4文字ということになります。
半角と全角を混ぜて使用しても構いません。
そのときでも、全部で8バイトを超えないことに注意して下さい。
置換元ファイルも、置換後ファイルも共にテキストですので、拡張子は「.TXT」になります。
置換が終了したらWindowsの好きな場所に移して、もっと分かりやすい長い名前に変更するといいでしょう。
② Tips …「Alt」キー+「半角/全角」キー(MS-IME使用時)
MS-DOS画面では、半角←→全角の変更を「Alt」キー+「半角/全角」キーで行います。
全角欧文はこの操作の後、「Caps Lock」キーを、全角ひらがなに戻す時は「カタカナ・ひらがな」キーを押します。
「f」のように、大文字入力中に小文字を入力する時は、Shiftキーを押しながら「F」キーを押します。
③「F3」キーで入力省略
前に入力した行と同じものを入力する時は、「F3」キーを押します。
次のテキストを置換するため、置換元ファイル名を換える時は、「F3」キーを押した後、「←」キー、あるいはBack Spaceキーを押していくと文字が消えていきます。
消したファイル名の後に新しいファイル名を入力します。
この時、半角の文字数、あるいは全角の文字数が直前の入力と同じだと、ファイル名を入力した後に再度「F3」キーを押すと、その後ろに直前の変換時の入力文字が続いて現れます。
置換ファイルが複数あったら、置換元ファイル名および置換後ファイル名の文字数を全ファイル一致させておくと、ファイル名の変更だけで置換がすみます。
例えば、 C:¥WINDOWS> の後に
SED -f C:¥SED240¥変換.SED A:¥表紙.TXT > A:¥a表紙.TXT
(F3キー) 目次 (F3キー) 目次(F3キー)
(F3キー) 本文 (F3キー) 本文(F3キー)
(F3キー) 索引 (F3キー) 索引(F3キー)
④ 定型文を辞書登録
SED -f C:¥SED240¥変換.SED A:¥
これくらいまでを辞書登録しておくと入力が簡単です。弊社では
「SED」(全角)で登録しています。
前述したように、スクリプトはテキストで書かれていて、ファイル名に「.SED」という拡張子を付けたものです。
もっとも単純な基本形は
s/A/B/g ……アルファベット「A」をアルファベット「B」に置換
「s」は置換(Substitute)コマンド
「/」は区切り文字
「g」は段落中の全ての文字に対して置換を行うという
意味のオプション
「s」「/」「g」は半角小文字です。
「g」を付けないと段落中に最初に出てきた文字のみ置換して、同じ段落中のその後に出てきた文字は置換しません。
SEDは改行マークで区切られた段落単位で置換を行っていき、その置換元ファイルの全ての段落を置換していきます。
上記の「s/A/B/g」の一行だけのファイルに「AtoB.sed」という名前を付ければ、りっぱなスクリプトファイルになります。
作ったスクリプトファイルはSED240フォルダに置くようにして下さい。
基本形の応用
s/悪魔/天使/g ………「悪魔」を「天使」に置換
s/[撮採]/取/g ………「撮」を「取」に、「採」を「取」に置換
([ ]は囲まれた文字のどれか1文字の意味)
s/[男女]性/人間/g ……「男性」を「人間」に、「女性」を「人間」に
置換
s/[A-Za-z]/欧文/g …… 半角アルファベットを全て「欧文」に置換
s/[^ぁ-ん]//g ……ひらがな以外を全て削除
([の直後の^は、指定文字以外の意味。
//は間に何も無いので削除の意味)
s/$$*/ドル/g ……$の連なりを「ドル」一文字に置換
上記の置換は、$→ドル、$$→ドル、$$$$→ドル、$$$$$$$→ドル
になります。
「*」は直前の文字の0回以上の繰り返しの意味。通常は1回以上の繰り返しを指定。「*」の前は同じ文字を2つ置く。
無駄なスペースや文字を削除するのによく使われます。
範囲指定の色々
[A-Z] …… 半角の大文字アルファベット全部
(全角で書けば、全角の大文字アルファベット全部)
[a-z] …… 半角の小文字アルファベット全部
(全角で書けば、全角の小文字アルファベット全部)
[A-Za-zA-Za-z] ……アルファベット全部
[0-9] …… 半角の数字全部 (全角で書けば、全角の数字全部)
[0-90-9] …数字全部
[ぁ-ん] …… ひらがな全部 (「ぁ」は拗促音)
[ァ-ヶ] …… カタカナ全部 (「ァ」「ヶ」は拗促音)
[亜-龠] …… 漢字全部
[、-龠] …… 全角文字全部
[ -~] …… 半角文字全部(半角スペースとチルダ)
以上、[ ]及び間の「-」は全て半角です。
SEDは奥が深く、複雑なスクリプトがたくさんあります。
しかし、日常使用するには基本形と、その応用を知っていれば十分こと足りると思います。
参考図書
もっと詳しく知りたい方は、以下の本を参考にして下さい。
「sedパズルブック」片山 裕著(インプレス)1993年
「テキストツールのテキスト」平山 直之著(メロン出版)1995年
Windowsで使いたい方は
「sedによる編集&DTP」CD-ROM付き
高橋 陽著(技術評論社)1998年
このコラムで紹介しているSED240をご希望の方は「SED240.ZIP」をダウンロードしてください。(スクリプト付き)
添付するスクリプトはすぐに使えるものばかりですが、これを参考にしてご自分の作業環境に合ったものを作られるのも良いかと思います。
Vectorで「SED」を検索すると、別のファイルをダウンロードできます。そちらも参照して下さい。
最後になりましたが、「SED240」をパソコンから削除するにはフォルダごと捨ててください。(レジストリを変更していません)
以上、SEDについて何も知らない方のために、分かり易く初歩的な使い方を書いたつもりです。
正規表現、検索パターン、置換パターン、アドレス、マッチ、ラベル等々、難しい用語を使えばもっともらしい解説文になるのですが、用語に振り回されて、かえって理解が遠くなってはいけないので、あえてそれらの文字の使用を避けました。
これを機に、自費出版をお考えの方にはもちろん、その他の分野の方にもSEDが役立つことを期待しています。
尚、SEDについての質問はお受けしておりません。
疑問点は上記の参考図書から、その解答を見つけて下さい。
「よくある質問」その他の項目
○アート紙とコート紙の違いが分かりません
○ダブルトーンと2色分解の違いは?
○トゥルータイプフォントはなぜジャギーが出ないのですか?
○マークや図をきれいにトレースしたいのですが…
○きれいな数式はできますか?
○ページの組みたては?面付けは?書店への配本は?
ページの組みたて 面付け 書店への配本
○自分の書いた原稿は本になったら何ページくらいになるの?
書籍の寸法 1ページ当りの文字数 ページ数の出し方
○自分でデータを作る時に注意することは?
写真データ イラスト・図のデータ 解像度 デジタルカメラ 印刷物の原稿 大容量データの送信
○写真や図版原稿の指定の方法は?
トリミング指定 写真の加工 スキャナー料金
○手書き原稿の校正・校正回数・プリントアウトを印刷に使えるか
手書き原稿 校正回数 プリントアウトの印刷
○文字原稿は入力してデータにするのが一番
パソコン入力 ワープロ入力
よくある質問一覧のページへ