ADC
ご意見をお寄せいただきありがとうございました

この記事は機械翻訳されています.免責事項

正規表現

CONTAINS ("<string>") または EQ ("<string>") 演算子で実行する操作よりも複雑な文字列照合操作を実行する場合は、正規表現を使用します。Citrix® NetScaler® アプライアンスのポリシーインフラストラクチャには、テキスト照合の引数として正規表現を渡すことができる演算子が含まれています。正規表現を扱う演算子の名前には、文字列 REGEX が含まれます。引数として渡す正規表現は、 "<http://www.pcre.org/pcre.txt>."で説明されている正規表現の構文に準拠している必要があります。正規表現の詳細については、 "<http://www.regular-expressions.info/quickstart.html>"および"<http://www.silverstones.com/thebat/Regex.html>."を参照してください。

正規表現で機能する演算子のターゲットテキストは、テキストまたは HTTP ヘッダーの値のいずれかです。次に、正規表現演算子を使用してテキストを操作する高度なポリシー式の形式を示します。

<text>.<regex_operator>(re<delimiter><regex_pattern><delimiter>)

この文字列<text>は、パケット内のテキスト文字列(HTTP.REQ.URL など)を識別する高度なポリシー式のプレフィックスを表します。文字列<regex_operator>は正規表現演算子を表します。正規表現は常に文字列 re で始まります。<delimiter>で表される一対の一致する区切り文字は 、 正規表現を表す文字列<regex_pattern>を囲みます。

次の式例では、HTTP パケット内の URL に文字列 *.jpeg* はワイルドカード)が含まれているかどうかを調べ、結果を示すブール値 TRUE または FALSE を返します。正規表現は、区切り文字として動作する一対のスラッシュマーク (/) で囲まれます。

http.req.url.regex_match(re/.<asterisk>\.jpeg/)

正規表現演算子を組み合わせて、検索の範囲を定義または絞り込むことができます。たとえば、<text>.AFTER_REGEX(reregex_pattern1).BEFORE_REGEX(reregex_pattern2)は文字列照合の対象が regex_pattern1 パターンと regex_pattern2パターン間のテキストであることを指定します。正規表現演算子で定義されたスコープでは、テキスト演算子を使用できます。たとえば、CONTAINS ("<string>") 演算子を使用して、定義されたスコープに文字列 abc が含まれているかどうかを確認できます。

<text>.AFTER_REGEX(re/regex_pattern1).BEFORE_REGEX(re/regex_pattern2/).CONTAINS("abc")

正規表現を評価するプロセスは、本質的に単純な文字列引数で動作するCONTAINS ("<string>") や EQ ("<string>") などの演算子の場合よりも時間がかかります。正規表現は、要件が他の演算子の範囲を超えている場合にのみ使用してください。

このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。
正規表現