Cómo funciona la coincidencia de cadenas con conjuntos de patrones y conjuntos de datos
联合国conjunto de赞助人conjunto阿德拿督contiene un conjunto de patrones y a cada patrón se le asigna un índice único. Cuando se aplica una directiva a un paquete, una expresión identifica una cadena que se va a evaluar y el operador la compara con los patrones definidos en el conjunto de patrones o el conjunto de datos hasta que se encuentre una coincidencia o se hayan comparado todos los patrones. Luego, según su función, el operador devuelve un valor booleano que indica si se encontró un patrón coincidente o el índice del patrón que coincide con la cadena.
Nota: En este tema se explica el funcionamiento de un conjunto de patrones. Los conjuntos de datos funcionan de la misma manera. La única diferencia entre los conjuntos de patrones y los conjuntos de datos es el tipo de patrones definidos en el conjunto.
Tenga en cuenta el siguiente caso de uso para comprender cómo se pueden utilizar los patrones para la coincidencia de cadenas.
Desea determinar si el sufijo URL (texto de destino) contiene alguna de las extensiones del archivo de imagen. Sin usar conjuntos de patrones, tendría que definir una expresión compleja, de la siguiente manera:
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")
Si la URL tiene el sufijo “jpg” con la expresión compuesta anterior, el dispositivo NetScaler debe recorrer toda la expresión compuesta de forma secuencial, de una subexpresión a la siguiente, para determinar que la solicitud hace referencia a una imagen jpg. La siguiente ilustración muestra los pasos del proceso.
![Imagen traducida](https://docs.citrix.com/en-us/citrix-adc/media/without_patterns.png)
Cuando una expresión compuesta incluye cientos de subexpresiones, el proceso anterior consume muchos recursos. Una mejor alternativa es una expresión que invoca un conjunto de patrones, como se muestra en la siguiente ilustración.
![Imagen traducida](https://docs.citrix.com/en-us/citrix-adc/media/with_patterns.png)
Durante la evaluación de la directiva, como se muestra arriba, el operador (CONTAINS_ANY) compara la cadena identificada en la solicitud con los patrones definidos en el conjunto de patrones hasta que encuentra una coincidencia. Con la expresión Sample_Patset, las múltiples iteraciones de seis subexpresiones se reducen a una sola.
Al eliminar la necesidad de configurar expresiones compuestas que realizan la coincidencia de cadenas con varias operaciones OR, los conjuntos de patrones o conjuntos de datos simplifican la configuración y aceleran el procesamiento de solicitudes y respuestas.
oficial de La版本埃斯特contenido esta en炉火s. Para mayor comodidad, parte del contenido de la documentación de Cloud Software Group solo tiene traducción automática. Cloud Software Group no puede controlar el contenido con traducción automática, que puede contener errores, imprecisiones o un lenguaje inadecuado. No se ofrece ninguna garantía, ni implícita ni explícita, en cuanto a la exactitud, la fiabilidad, la idoneidad o la precisión de las traducciones realizadas del original en inglés a cualquier otro idioma, o que su producto o servicio de Cloud Software Group se ajusten a cualquier contenido con traducción automática, y cualquier garantía provista bajo el contrato de licencia del usuario final o las condiciones de servicio, o cualquier otro contrato con Cloud Software Group, de que el producto o el servicio se ajusten a la documentación no se aplicará en cuanto dicha documentación se ha traducido automáticamente. Cloud Software Group no se hace responsable de los daños o los problemas que puedan surgir del uso del contenido traducido automáticamente.
DIESER DIENST KANN ÜBERSETZUNGEN ENTHALTEN, DIE VON GOOGLE BEREITGESTELLT WERDEN. GOOGLE LEHNT JEDE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GEWÄHRLEISTUNG IN BEZUG AUF DIE ÜBERSETZUNGEN AB, EINSCHLIESSLICH JEGLICHER GEWÄHRLEISTUNG DER GENAUIGKEIT, ZUVERLÄSSIGKEIT UND JEGLICHER STILLSCHWEIGENDEN GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN DRITTER.
CE SERVICE PEUT CONTENIR DES TRADUCTIONS FOURNIES PAR GOOGLE. GOOGLE EXCLUT TOUTE GARANTIE RELATIVE AUX TRADUCTIONS, EXPRESSE OU IMPLICITE, Y COMPRIS TOUTE GARANTIE D'EXACTITUDE, DE FIABILITÉ ET TOUTE GARANTIE IMPLICITE DE QUALITÉ MARCHANDE, D'ADÉQUATION À UN USAGE PARTICULIER ET D'ABSENCE DE CONTREFAÇON.
ESTE SERVICIO PUEDE CONTENER TRADUCCIONES CON TECNOLOGÍA DE GOOGLE. GOOGLE RENUNCIA A TODAS LAS GARANTÍAS RELACIONADAS CON LAS TRADUCCIONES, TANTO IMPLÍCITAS COMO EXPLÍCITAS, INCLUIDAS LAS GARANTÍAS DE EXACTITUD, FIABILIDAD Y OTRAS GARANTÍAS IMPLÍCITAS DE COMERCIABILIDAD, IDONEIDAD PARA UN FIN EN PARTICULAR Y AUSENCIA DE INFRACCIÓN DE DERECHOS.
本服务可能包含由 Google 提供技术支持的翻译。Google 对这些翻译内容不做任何明示或暗示的保证,包括对准确性、可靠性的任何保证以及对适销性、特定用途的适用性和非侵权性的任何暗示保证。
このサービスには、Google が提供する翻訳が含まれている可能性があります。Google は翻訳について、明示的か黙示的かを問わず、精度と信頼性に関するあらゆる保証、および商品性、特定目的への適合性、第三者の権利を侵害しないことに関するあらゆる黙示的保証を含め、一切保証しません。
ESTE SERVIÇO PODE CONTER TRADUÇÕES FORNECIDAS PELO GOOGLE. O GOOGLE SE EXIME DE TODAS AS GARANTIAS RELACIONADAS COM AS TRADUÇÕES, EXPRESSAS OU IMPLÍCITAS, INCLUINDO QUALQUER GARANTIA DE PRECISÃO, CONFIABILIDADE E QUALQUER GARANTIA IMPLÍCITA DE COMERCIALIZAÇÃO, ADEQUAÇÃO A UM PROPÓSITO ESPECÍFICO E NÃO INFRAÇÃO.