Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/
MongoDB Mongosync
/ /

フィルターにおける正規表現

バージョン 1.6 の新機能.

1.6以降、start APIでは、フィルタリング同期で使用される パラメータと パラメータのフィルタを構成するために、正規表現includeNamespaces excludeNamespacesを使用できるようになりました。

フィルタリングされた同期を使用するためにmongosyncのデータベースとコレクションを照合するには、正規表現を使用できます。

{
"databaseRegex": {
"pattern": "<string>",
"options": "<string>"
},
"collectionsRegex": {
"pattern": "<string>",
"options": "<string>"
}
}

フィルターに渡す正規式パターンは、 MongoDBサーバーでサポートされている regex 構文に従う必要があります。

フィルター ドキュメント内の正規表現では、regexガイドにリストされている options が使用されます。options は、連結されたオプションの string です。例、is オプションを指定するには、"si"options に渡します。連結されるオプションの順序は関係ありません。

フィルター ドキュメント内の正規表現では、次のフィールドが使用されます。

オプション
タイプ
説明

collectionsRegex

ドキュメント

フィルターで一致させるコレクションを指定します。

collectionsRegex.options

string

一致で使用する正規表現オプション。

collectionsRegex.pattern

string

一致する正規表現パターン。

databaseRegex

ドキュメント

フィルターを一致させるデータベースを指定します。

databaseRegex.options

string

一致で使用する正規表現オプション。

databaseRegex.pattern

string

一致する正規表現パターン。

これらのオプションは、 includeNamespacesexcludeNamespacesパラメーターの両方で使用できます。

正規表現を使用すると、複数のデータベースやコレクションを単一のパターンで一致させることができます。 複数の同じ名前のデータベースまたはコレクションを照合する場合は、個々のデータベースまたはコレクションのグループに対して一連のフィルターを作成するよりも正規表現を使用した方が簡単な場合があります。

databaseRegexcollectionsRegex はそれぞれ optionsフィールドをサポートしています。このフィールドを使用して正規式オプションを構成できます。内部的には、mongosync はフィルターとオプションを $regex 演算子に渡します。その演算子が使用できるオプションは、Filted Sync で使用できます。

例、このフィルターは、accounts_ string で始まる salesデータベース内のコレクションと一致します。このフィルターでは、複数行の値を持つ string で各行の先頭または末尾の文字を照合するための オプション m と、ドット記号が改行文字 を含む すべての文字と一致するようにするオプション s も指定します。

"includeNamespaces": [
{
"database": "sales",
"collectionsRegex": {
"pattern": "^accounts_.+?$",
"options": "ms"
}
}
]

戻る

フィルタリングされた同期

項目一覧