正規表現置換
ロジック名
正規表現置換(ドキュメントMapper/変数Mapper/マージMapper)
機能
入力文字列を正規表現により置換して返します。
データ型
|
場所 |
型 |
|---|---|
|
1番目の入力ハンドラ |
文字列 |
|
ロジックの出力 |
文字列 |
プロパティ
|
カテゴリ |
プロパティ |
説明 |
|---|---|---|
|
必須設定 |
置換前文字列(正規表現パターン) |
置き換えたい文字列を指定します。 |
|
必須設定 |
置換後文字列 |
置き換えたあとの文字列を指定します。 |
|
コメント |
コメント |
ロジックの説明を記述することができます。変換処理には関係しません。 |
機能の詳細
正規表現パターン
使用可能な正規表現パターンは、java.util.regex.Patternに準じます。
Patternについては、「Java(TM) Platform, Standard Edition 8 API Specification」(http://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html)を参照してください。
正規表現の参考
|
参考表記 |
意味 |
|---|---|
|
^ |
行の先頭 |
|
$ |
行の末尾 |
|
. |
改行以外の任意の1文字 |
|
[] |
[]でくくられた中にある任意の1文字 |
|
[^] |
[]でくくられた中にない任意の1文字 |
|
* |
直前の文字の0個以上の並び |
|
+ |
直前の文字の1個以上の並び |
|
? |
直前の文字が0個または1個 |
|
{a} |
直前の文字のa個の並び |
|
{a,} |
直前の文字のa個以上の並び |
|
{a,b} |
直前の文字のa個以上、b個以下の並び |
|
| |
二者択一の演算子 |
|
\ |
エスケープ文字 |
置換後文字列
正規表現置換は、java.lang.StringクラスのreplaceAll()メソッドを使用しています。
そのため、置換後文字列内でドル記号($)は前方参照された部分シーケンスへの参照として処理される場合があり、バックスラッシュ(\)は置換後文字列内の文字をエスケープするのに使用されます。
バックスラッシュまたはドル記号をそのまま出力する場合は、バックスラッシュでエスケープしてください。
|
置換前文字列(正規表現パターン) |
置換後文字列 |
1番目の入力ハンドラ |
ロジックの出力 |
|---|---|---|---|
|
(\d{1,2}:\d{2}) PM |
$1 p.m. |
9:00 PM |
9:00 p.m. |
|
(\d{1,2}:\d{2}) PM |
\$1 p.m. |
9:00 PM |
$1 p.m. |
|
c |
\* |
abcde |
ab*de |
|
c |
\\* |
abcde |
ab\*de |
String.replaceAll()メソッドについては、「Java(TM) Platform, Standard Edition 8 API Specification」(http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#replaceAll-java.lang.String-java.lang.String-)を参照してください。
ロジックの使用例
マッピング定義
ロジックの設定と処理結果
商品コードをアスタリスクに置換します。
プロパティ設定
|
プロパティ |
設定値 |
|---|---|
|
置換前文字列(正規表現パターン) |
[A-Z]{3}-[0-9]{3} |
|
置換後文字列 |
***-*** |
入力データ
|
サンプルA(ACE-036) |
|
サンプルB(KMO-147) |
|
サンプルC(VXZ-258) |
出力データ
|
サンプルA(***-***) |
|
サンプルB(***-***) |
|
サンプルC(***-***) |
ロジック全体の一覧は「Mapperロジックガイド」を参照してください。