字符串匹配如何使用模式集和数据集
一个模式集或数据集包含一组模式,每个模式都被分配一个唯一的索引。将策略应用于数据包时,表达式将标识要计算的字符串,操作员将该字符串与模式集或数据集中定义的模式进行比较,直到找到匹配项或对所有模式进行比较。然后,根据其函数,运算符返回一个布尔值,指示是否找到匹配的模式,或者返回与字符串匹配的模式索引。
笔记:本主题解释模式集的工作原理。数据集也是这样工作的。模式集和数据集之间的唯一区别是在集合中定义的模式类型。
考虑以下用例,以理解如何将模式用于字符串匹配。
您需要确定URL后缀(目标文本)是否包含任何图像文件扩展名。如果不使用模式集,则必须定义复杂表达式,如下所示:
HTTP.REQ.URL.SUFFIX.CONTAINS("svg") μ HTTP.REQ.URL.SUFFIX.CONTAINS("bmp") μ HTTP.REQ.URL.SUFFIX.CONTAINS("png") μ HTTP.REQ.URL.SUFFIX.CONTAINS("gif") μ HTTP.REQ.URL.SUFFIX.CONTAINS("tiff") μ HTTP.REQ.URL.SUFFIX.CONTAINS("jpg")
如果URL的后缀为“jpg”,则Citrix ADC设备必须依次遍历整个复合表达式(从一个子表达式到下一个子表达式),以确定请求引用的是jpg图像。下图显示了该过程中的步骤。
![局部图像]()
当一个复合表达式包含数百个子表达式时,上述过程是资源密集型的。更好的替代方法是调用模式集的表达式,如下图所示。
![局部图像]()
如上所示,在策略评估期间,操作符(CONTAINS_ANY)将请求中标识的字符串与模式集中定义的模式进行比较,直到找到匹配为止。使用Sample_Patset表达式,通过六个子表达式的多次迭代减少到只有一个。
通过消除配置使用多个OR操作执行字符串匹配的复合表达式的需要,模式集或数据集简化了配置并加快了请求和响应的处理。
此内容的官方版本为英语。有些Citrix文档内容是机器翻译的,只是为了方便您。Citrix无法控制机器翻译的内容,这些内容可能包含错误、不准确或不合适的语言。对于将英文原件翻译成任何其他语言的准确性、可靠性、适用性或正确性,或您的Citrix产品或服务符合任何机器翻译内容,不作任何形式的明示或暗示担保,以及根据适用的最终用户许可协议或服务条款或与Citrix签订的任何其他协议提供的产品或服务符合任何文件的任何保证,在此类文件已被机器翻译的情况下不适用。Citrix对使用机器翻译内容可能导致的任何损坏或问题概不负责。
你可以用Übersetzungen的焓变,你可以用谷歌的焓变。谷歌LEHNT JEDE AUSDRUCKLICHE奥得河STILLSCHWEIGENDE GEWAHRLEISTUNG BEZUG AUF死UBERSETZUNGEN AB, EINSCHLIESSLICH JEGLICHER GEWAHRLEISTUNG DER GENAUIGKEIT, ZUVERLASSIGKEIT和JEGLICHER STILLSCHWEIGENDEN GEWAHRLEISTUNG DER MARKTGANGIGKEIT, DER EIGNUNG毛皮杯BESTIMMTEN ZWECK和DER NICHTVERLETZUNG冯RECHTEN DRITTER。
该服务的价格为谷歌。谷歌排除相对的诽谤,表达你隐含的,你包含确切的保证,fiabilitÉ和隐含的保证,qualitÉ市场,d 'adÉquation À特殊用法和缺席,contrefaÇon。
我们的服务应该向您提供tecnologÍa的谷歌。谷歌renuncia a todas las garantÍas relacionadas con las traducciones, tanto implÍcitas como explÍcitas,包括las garantÍas de accurtuy, fiabilidad y otras garantÍas implÍcitas de comerciabilidad, idoneidad para en en en ausencia de infracciÓn de derechos。
本服务可能包含由谷歌提供技术支持的翻译。谷歌对这些翻译内容不做任何明示或暗示的保证,包括对准确性、可靠性的任何保证以及对适销性,特定用途的适用性和非侵权性的任何暗示保证。
このサービスには,谷歌が提供する翻訳が含まれている可能性があります。谷歌は翻訳について,明示的か黙示的かを問わず,精度と信頼性に関するあらゆる保証,および商品性,特定目的への適合性,第三者の権利を侵害しないことに関するあらゆる黙示的保証を含め,一切保証しません。
Este serviÇo pode conter traduÇÕes fornecidas pelo谷歌。O谷歌se exime de todas as garantias relacionadas com as traduÇÕes, expressas ou implÍcitas, including do ququer garantia de precisÃo, confabilidade e ququer garantia implÍcita de comercializaÇÃo, adequaÇÃo a um propÓsito especÍfico e nÃo infraÇÃo。