複数の sed 置換命令を書いたテキストファイルを用意します。ファイル名は何でもかまいませんが、この例では、replace.sed とします。
s|http://src//a\.jpg|http://dst/a\.jpg|g s|http://src/b\.jpg|http://dst/b\.jpg|g
置換の | は区切り記号です。
普通は / を使いますが、実は、何でもいいみたいです!
今回の URL のように、/ を普通の記号として
使いたいときは、| など、別の記号を使うと見やすいですね。
. は特殊記号なので、拡張子の . を表すには
\
をつけて
\.
のようにします。
注意) 半角
\
のコードは、¥
と同じなので、フォントによっては
¥
と表示されます。
最初の
s
は置換を指示する命令。最後の
g
はマッチする箇所が複数あった場合に、全て置換するオプションです。(指定しないと、最初の箇所のみ置換される)
あとは、sed に命令ファイルを指定して実行するだけです。
sed -f replace.sed in.txt > out.txt
エクセルから置換に使用するセルをコピーしてテキストエディターに貼りつけます。このとき、コピーするセルの列は置換前と置換後の 2 つ、行数は自由です。
次に、sed の特殊文字の前に、\
を付けます。上の例では、.
を
\.
にします。テキストエディターの置換機能を使えば簡単にできますよね。
次は、タブを、|
に置換します。エクセルからセルを貼りつけると、列の区切りはタブになるためです。
最後に、改行文字を、|g改行文字s|
に置換します。最初の行には先頭の
s|
がつかなかったり、行末に余分な
s|
がついたりするので、ちょこっと修正します。
改行文字の置換の仕方はテキストエディターによって異なるので、各エディターの使い方を見てください。ちなみに自分は、emacs なので、その方法だけ書いときます。
M-x replace-stringリターンキー srcリターンキー dstリターンキーで、src を dst に一括置換できます。ただし、カーソルキーより下部分に対して適用されるので、実行する前に、カーソルをファイル先頭に移動しておきます。
M-x
は、メタキーを押しながら x の意味ですが、Windows には無いので、Esc を
押してから
x したり、Alt で Meta の代用する設定になっている場合は、Alt-x で入力します。
自分流かもしれませんが、私は、改行文字をコピーしてから
M-x replace-stringリターンキー
して、ミニバッファーで改行文字が必要なときに、C-y
(貼り付け)
して置換してます。せっかくなので、もっと正しそうな情報を調べてみたら、C-q C-j で改行が入るみたいね。たまにしか使わなから、覚えられないかも・・・。
このサイトのページへのリンクは自由に行っていただいてかまいません。
このサイトで公開している全ての画像、プログラム、文書の無断転載を禁止します。
ここをクリック
すると表示されるページから作者へメールで連絡できます。