This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
对文本的基本操作
对文本的基本操作包括字符串匹配、计算字符串长度和控制区分大小写的操作。您可以在作为参数传递给表达式的字符串中包含空格,但字符串不能超过 255 个字符。
字符串比较函数
下表列出了基本的字符串匹配操作,其中函数返回布尔值 TRUE 或 FALSE。
功能 | 说明 |
---|---|
<text>.CONTAINS(<string>) |
如果目标包含,则返回布尔值 TRUE <string> 。示例:http.req.url.contains(".jpeg")
|
<text>.EQ(<string>) |
如果目标与精确匹配,则返回布尔值 TRUE <string> 。例如,以下表达式为主机名为 “myhostabc” 的 URL 返回布尔值 TRUE: http.req.url.hostname.eq("myhostabc")
|
<text>.STARTSWITH(<string>) |
如果目标以开头,则返回布尔值 TRUE <string> 。例如,以下表达式为主机名为 “myhostabc” 的 URL 返回布尔值 TRUE: http.req.url.hostname.startswith("myhost")
|
<text>.ENDSWITH(<string>) |
如果目标以 http.req.url.hostname.endswith("abc") |
<text>.NE(<string>) |
如果前缀不等于字符串参数,则返回布尔值 TRUE。如果前缀返回非字符串值,则函数参数将与前缀返回的值的字符串表示形式进行比较。您可以将这些函数与 SET_TEXT_MODE(IGNORECASE) or SET_TEXT_MODE(NOIGNORECASE) 以及 ASCII 和 UTF-8 字符集一起使用。 |
<text>.GT(<string>) |
如果前缀的字母顺序大于字符串参数,则返回布尔值 TRUE。如果前缀返回非字符串值,则函数参数将与前缀返回的值的字符串表示形式进行比较。您可以将函数与 SET_TEXT_MODE(IGNORECASE) 或 SET_TEXT_MODE(NOIGNORECASE) 以及 ASCII 和 UTF-8 字符集一起使用。 |
<text>.GE(<string> ) |
如果前缀的字母顺序大于或等于字符串参数,则返回布尔值 TRUE。如果前缀返回非字符串值,则函数参数将与前缀返回的值的字符串表示形式进行比较。您可以将函数与 SET_TEXT_MODE(IGNORECASE) 或 SET_TEXT_MODE(NOIGNORECASE) 以及 ASCII 和 UTF-8 字符集一起使用。 |
<text>.LT(<string> ) |
如果前缀的字母顺序小于字符串参数,则返回布尔值 TRUE。如果前缀返回非字符串值,则函数参数将与前缀返回的值的字符串表示形式进行比较。您可以将函数与 SET_TEXT_MODE(IGNORECASE) 或 SET_TEXT_MODE(NOIGNORECASE) 以及 ASCII 和 UTF-8 字符集一起使用。 |
<text>.LE(<string>) |
如果前缀的字母顺序小于或等于字符串参数,则返回布尔值 TRUE。如果前缀返回非字符串值,则函数参数将与前缀返回的值的字符串表示形式进行比较。您可以将函数与 SET_TEXT_MODE(IGNORECASE) 或 SET_TEXT_MODE(NOIGNORECASE) 以及 ASCII 和 UTF-8 字符集一起使用。 |
计算字符串的长度
<text>.LENGTH
操作返回一个数值,该值等于字符串中的字符数(不是字节数):
<text>.LENGTH
例如,您可能想要识别超过特定长度的请求 URL。以下是实现此示例的表达式:
HTTP.REQ.URL.LENGTH < 500
计算字符串中的字符或元素后,可以对它们应用数字操作。有关详细信息,请参阅 高级策略表达式:使用日期、时间和数字。
考虑、忽略和更改文本大小写
以下函数对字符串中字符的大小写(大写或小写)进行操作。
|功能|说明|
|— |— |
|<text>.SET_TEXT_MODE
(IGNORECASE | NOIGNORECASE) | 此函数为所有文本操作打开或关闭区分大小写。|
|<text>.TO_LOWER
| 将不超过 2 千字节 (KB) 的文本块的目标转换为小写。如果目标超过 2 KB,则返回 UNDEF。例如,字符串 “abCD:” 被转换为 “abcd:”。| |
<text>.TO_UPPER
| 将目标转换为大写。如果目标超过 2 KB,则返回 UNDEF。例如,字符串 “abCD:” 被转换为 “ABCD:”.|
从字符串中去除特定字符
您可以使用 STRIP_CHARS (<string>
) 函数从高级策略表达式前缀(输入字符串)返回的文本中删除特定字符。在参数中指定的字符的所有实例都将从输入字符串中去除。您可以对生成的字符串使用任何文本方法,包括用于将字符串与模式集匹配的方法。
例如,在表达式 CLIENT.UDP.DNS.DOMAIN.STRIP\_CHARS(".-\_")
中,STRIP\_CHARS(<string>)
函数从前缀 CLIENT.UDP.DNS.DOMAIN 返回的域名中去除所有句点 (.)、连字符 (-) 和下划线 (_)。如果返回的域名是 “a.dom_ai_n-name”,则该函数将返回字符串 “adomainname”。
在以下示例中,将生成的字符串与名为 “listofdomains” 的模式集进行比较:
CLIENT.UDP.DNS.DOMAIN.STRIP_CHARS(".-_").CONTAINS_ANY("listofdomains")
注意: 不能对 STRIP_CHARS(<string>)
函数返回的字符串执行重写操作。
以下函数从给定字符串输入的开头和结尾去除匹配的字符。
功能 | 说明 |
---|---|
<text>.STRIP_START_CHARS(s) |
从输入字符串的开头去除匹配的字符,直到找到第一个不匹配的字符,然后返回字符串的其余部分。必须在引号内将要剥离的字符指定为单个字符串。例如,如果标头的名称是 testLang 并且 :/en_us:is its value,HTTP.RES.HEADER(“TestLang”).STRIP_START_CHARS(“:”) 从标头值的开头去除指定的字符,直到找到第一个不匹配的字符 e 并返回字符串。 |
<text >.STRIP_END_CHARS(s) |
找到从输入字符串末尾到第一个不匹配字符的片段匹配字符,然后返回字符串的其余部分。必须在引号内将要剥离的字符指定为单个字符串。例如,如果标头的名称是 testLang 且:/en_us: 是它的值,则 HTTP.RES.HEADER (“testLang”) .STRIP_START_CHARS (“:”) 从标头值的末尾去除指定的字符,直到找到第一个不匹配的字符 s 并返回:/_en_us 作为字符串。 |
将字符串附加到另一个字符串
您可以使用 APPEND () 函数将参数的字符串表示形式附加到前一函数返回的值的字符串表示形式。上述函数可以是返回数字、无符号长整型、双精度型、时间值、IPv4 地址或 IPv6 地址的函数。参数可以是文本字符串、数字、无符号长整型、双精度型、时间值、IPv4 地址或 IPv6 地址。生成的字符串值与使用 + 运算符获取的相同字符串值。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.