秀丸エディタは昔から使っているメインエディタ。正規表現を使用することで、複雑な検索・置換・配列による編集などを行うことができ、仕事上非常に役に立っている。
正規表現は、検索や置換画面で、「正規表現」のチェックボックスを有効することで使用できる。
ここでは全て説明できないが、よく使用する記号や一例を紹介しよう。
正規表現記号
記法 | 内容 | 使用例 | 説明 |
. | 任意の文字 | ||
.+ | 任意の文字列 | ||
+ | 直前の文字1回以上の繰り返し | ||
* | 直前の文字0回以上の繰り返し | ||
^ | 行頭 | ||
$ | 行末 | ||
? | 直前の文字0回か1回出現箇所を検索 | ||
[] | [1-8] | 1~8を検索 | |
[A-Z] | A~Zを検索 | ||
[開始文字-終了文字] | 文字コード順で検索する | ||
[@%$&] | []内のいずれかの文字を検索 | ||
[^] | 否定 | ||
[^abc] | a、b、cでない文字を検索する | ||
| | OR | ||
() | 検索パターンのグループ化 | ||
</?(HTML|BODY|FONT)> | |||
{} | 繰り返し指定 | ||
[0-9]{4} | 4桁の数字 | ||
.{15} | .を15回繰り返す | ||
{3,} | .3回以上 | ||
{3,5} | .3回以上、5回以下 |
エスケープ・キャラクタ
記法 | 内容 | 説明 |
\< | 単語の先頭を検索 | |
\> | 単語の末尾を検索 | |
\w | 1つの単語を検索 | |
\t | タブ | |
\n | 改行 | |
\z | EOFを検索 | |
\f | タグ付き正規表現 | \0で順に文字列を取り出す |
上記の正規表現記号やエスケープキャラクタを組み合わせることで、さまざまな処理が可能となる。
下記は自分がよく使用する一例である。
正規表現の使用例
CSVデータで列の入替え(列の抜出し)
下記は5列のCSVデータを入れ替える一例- 検索
- ^(([^,]?)*),(([^,]?)*),(([^,]?)*),(([^,]?)*),((.?)*)$
- 置換
- \1,\3,\2,\4,\5
(2列目と3列目を入替える場合) - \3,\4,\5
(3~5列目を抜出したい場合)
日付書式の変更、yyyy/mm/ddをyyyy年yy月yy日に置換
- 検索
- ([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})
- 置換
- \1年\2月\3日
変数の一括宣言
- あらかじめ変数名を1行ごとに入力
hensu1
hensu2
hensu3 - 検索
- ^(.*)$
- 置換
- $\1\t= $_POST['\1'];