Memos About Salesforce

Salesforceにハマってたこと!

正規表現 java.util.regex.Pattern データスパイダー dataspider 正規表現にマッチロジック パターン

f:id:jude2016:20200304131636p:plain
正規表現にマッチロジック

こんにちは、管理人の@Salesforce.Zです。

TerraskyさんのDataSpiderを触ってみました。

ファイルのコピーや移動には、条件付きで、操作をしたいので、ファイル名に対して、正規表現で対応したが サンプルがあまりなくて、パターンにどんなものを入力するかについて記事を起こしました。

読んだら得ること

★ Java正規表現の基本
★ DataSpiderの正規表現にマッチロジックのパターンの使用方法

目次

Java正規表現の基本ー java.util.regex.Pattern

$、¥、|、^などの基本的な意味や使い方は基本的な正規表現を参照してください。

基本な正規表現一覧はこちら

f:id:jude2016:20200304132739p:plain
一部抜粋

引用:https://www.sejuku.net/blog/13215

対象文字列には日本語がある場合

正規表現で日本語を取得したいを参照してください。

正規表現パターンを試すサイト

Java Regular Expression Tester

本番:正規表現にマッチロジック

トップの画像のように正規表現パターン(P)に入力するパターンについて、ここでは、前方一致、後方一致、部分一致をサンプルとして掲載します。複雑なものは基本知識を応用して、メールチェックや郵便番号チェックを作ってください。紹介したサイトからも答えを見つけれるはず。

前方一致

string.*

後方一致

.*string

部分一致

.*string.*

埋め込みフラグ表現 (?i)を使って次のようにパターン内に記述することもできる

大文字と小文字区別しない

.*(?i)string.*

iはignogeCaseの頭文字であり、Pattern.CASE_INSENSITIVEを有効する意味

public static final int CASE_INSENSITIVE 大文字と小文字を区別しないマッチングを有効にします。 デフォルトの大文字と小文字を区別しないマッチングでは、US-ASCII文字セットの文字だけがマッチします。Unicodeに準拠した大文字と小文字を区別しないマッチングを有効にするには、UNICODE_CASEフラグをこのフラグと組み合わせて指定します。

大文字と小文字を区別しないマッチングは、埋込みフラグ表現 (?i)を使用して有効にすることもできます。

このフラグを指定すると、パフォーマンスがわずかに低下する場合があります。

リファレンス

Pattern (Java Platform SE 8)

[ドキュメントMapper]正規表現にマッチ

最後に

DataSpiderはjavaをベースに作っているようで、javaができることなら、この製品もできるはず。

分からない時にjavaの動作をイメージすれば、いいでしょう。