はじめまして、eripongです。
今日は、
「新人/若手向け、これだけは知っとけTips25」
の19日目として「エディタの正規表現を使って効率化」
について書きます。
正規表現は、スクリプトや、プログラムから利用することが
多いですが、エディタの正規表現も、便利です。
正規表現について、
詳細は、解説しているサイトがいくつもあるため、
そちらを見てください。
やわらかい説明としては、
http://www.mnet.ne.jp/~nakama/
ちょっと堅めの説明として、
http://www.turtle.gr.jp/techno/regular-expression.html
が良いと思います。
ちなみに私は以下の書籍で勉強しました。
(版はもっと古かったですが)
- 作者: Jeffrey E.F. Friedl,株式会社ロングテール,長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2008/04/26
- メディア: 大型本
- 購入: 24人 クリック: 754回
- この商品を含むブログ (82件) を見る
ここでは、エディタの正規表現を使って行う
効率化をいくつか紹介します。
エディタといってもいくつもありますが、
ここでは秀丸を使った場合を紹介します。
たとえば、
「改行が連続する行を削除したい。」
場合がありませんか?
AA
BB
CC
となっている場合に、
AA
BB
CC
として詰めたい場合です。
秀丸を起動して元のテキストを貼り付け、
CTRL+Rで置換ウィンドウを開きます。
検索:^\n
置換:
の様に入力して、「全置換」を押下すると、
空行が消え、詰めた状態となります。
ここでは数行しかないテキストでしたが、
数百行、数千行ある場合に空行を取り除くことを考えると、
大きな効率化ですよね。
もう一つ、例を挙げます。
「ファイルパスの一覧から、ファイル名だけを切り出したい」
元データとして、"dir /B /S /A-D"で取得した以下のような結果があるとします。
D:\Tools\x64\apache-tomcat-7.0.29\bin\bootstrap.jar
D:\Tools\x64\apache-tomcat-7.0.29\bin\catalina-tasks.xml
D:\Tools\x64\apache-tomcat-7.0.29\lib\annotations-api.jar
D:\Tools\x64\apache-tomcat-7.0.29\logs\localhost_access_log.2012-11-04.txt
D:\Tools\x64\apache-tomcat-7.0.29\temp\safeToDelete.tmp
D:\Tools\x64\apache-tomcat-7.0.29\webapps\docs\class-loader-howto.html
D:\Tools\x64\apache-tomcat-7.0.29\webapps\examples\jsp\jsp2\jspx\basic.html
D:\Tools\x64\apache-tomcat-7.0.29\webapps\examples\WEB-INF\classes\async\Async2.java
ディレクトリ名とファイル名の間に、タブを入れてExcelに貼りたい場合に、
正規表現を使えます。
検索:\\\f[^\\]+\f$
置換:\t\1
置換した結果をExcelに貼れば、ディレクトリ名、ファイル名の一覧が完成します。
結果はこうなります
ここで挙げた例は、ほんの一例です。
正規表現を使うことで、ちょっとしたフォーマットの変更が
簡単に、素早く行えます。
新人、若手の皆さんの基礎スキルとして、
正規表現を身に着けてみてはいかがでしょうか。
それでは、また。