Skip to content Skip to main navigation Skip to footer

【拡張機能】 文字列置換(正規表現)

機能概要

文字列を正規表現で検索を行ない、一致した文字列を別の正規表現で置換します。

作業対象画面

正規表現とは

ある法則に則った文字列のパターンを記号と文字の組合せで表記する方法。

これを用いることで、あるパターンの文字列を指定したルールに従って置換することができます。例えば括弧()で囲まれた部分を別のテキストに置き換えるなど、ルールが定まっていれば正規表現の記述でそれを指定する事が可能。

正規表現は様々な記述方法があり、それに関する説明だけで一冊の本が書けてしまうボリュームのため、詳細についてはここでは省略します。Google検索等で「正規表現 文法」「正規表現 置換」などで検索すれば記述方法を調べることができます。

項目説明

・「項目A

文字列置換を行うテキストを指定します。右端の「>」ボタンを押すと複数行表示となります。改行が含まれていても可。

・「正規表現B

置換対象の文字列を正規表現で指定します。ここで指定された正規表現に一致するものが置換されます。

「`t」でタブの指定が可能。

・「正規表現C

項目Bを置き換える文字列を正規表現で指定します。単なる文字列を指定した場合はその文字列で置換されます。

何も指定しなかった場合はNULLで置換されます。

・「変数D

置換された結果を格納する変数を指定します。

よく使われる正規表現

記号記号の役割説明
.任意の1文字。改行は除く。「…」「」内に任意の3文字がある場合にマッチ
*直前の1文字の0回以上の繰り返しHoge*HogeもしくはHogeが先頭につく文字列にマッチ
^文字列の先頭^[0-9]先頭文字が数字にマッチ
$行の末尾^.{10}$10文字にマッチ
[]括弧内の任意の1文字と一致。「-」で範囲指定可能[a-z]小文字アルファベット1文字にマッチ
[^]括弧内の任意の1文字と不一致。「-」で範囲指定可能[^A-Z]大文字アルファベット以外にマッチ
+直前の文字の1個以上の繰り返しHoge+Hogee、Hogeeee、等にマッチ
直前の文字の0もしくは1文字Hoge?Hoge、Hogeeにマッチ
{n}直前の文字のn個の繰り返しHoge{2}Hogeeeにマッチ
{,n}直前の文字のn個以下の繰り返しHoge{,2}Hogeee、Hogeeにマッチ
{m,}直前の文字のm個以上の繰り返しHoge{2,}Hogeee、Hogeeee、等にマッチ
{m,n}直前の文字のm個以上、n個以下の繰り返しHoge{3,2}Hogeee、Hogeeeeにマッチ
|どちらかのパターンHoge|SugaHoge、Sugaにマッチ
()括弧内をグループ化し、マッチした内容を$nで参照できる「(.+)」「」で囲まれた部分にマッチ。 参照する場合は$1で指定。参照が複数ある場合は$2,$3・・・となります。

注意事項

  • 正規表現の文法は.Netに準拠します。

プログラム言語により若干文法に違いがあります。

  • 項目Aは複数行表示であっても、本機能では1行として認識されます。

項目A:
〒456-xxxx
愛知県名古屋市熱田区○○町×―××―×
高橋ビル4F
株式会社△△

上記のように記述されていても、本機能では項目Aは以下と認識されます。

項目A:
〒456-xxxx愛知県名古屋市熱田区○○町×―××―×高橋ビル4F株式会社△△

使用例

  • 複数パターンの文字列変換。「JAPAN」、「NIPPON」、「JPN」を日本に置き換える。

「正規表現B」:JAPAN|NIPPON|JPN

「正規表現C」:日本

実行結果 ・・・  項目A:「JAPAN原産」 ⇒ 変数D「日本原産」

  • 文字を囲んでいる括弧を置き換える。“「」”から“【】”に変換します。

文字を囲んでいる括弧を置き換える。“「」”から“【】”に変換します。

「正規表現B」:「(.+)」

「正規表現C」:【$1】

実行結果 ・・・  項目A:「テスト」⇒ 変数D:【テスト】

  • 先頭に「>」を挿入。

「正規表現B」:^

「正規表現C」:>

実行結果 ・・・  項目A:「テスト」 ⇒ 変数D:「>テスト」