ADC
感谢您提供反馈

这篇文章已经过机器翻译.放弃

XPath 和 HTML、XML 或 JSON 表达式

高级策略基础结构支持用于评估和检索 HTML、XML 和 JavaScript 对象表示法 (JSON) 文件中的数据的表达式。这使您能够在 HTML、XML 或 JSON 文档中查找特定节点,确定文件中是否存在节点,在 XML 上下文中找到节点(例如,具有特定父节点或具有给定值的特定属性的节点),并返回这些节点的内容。此外,您可以在重写表达式中使用 XPath 表达式。

XPath 的高级策略表达式实现包括指定 HTML 或 XML 文本的高级策略表达式前缀(如“HTTP.REQ.BOTY”),以及将 XPath 表达式作为其参数的 XPATH 运算符。

HTML 文件基本上是标签和文本元素的自由格式集合。您可以使用 XPATH_HTML 运算符(该运算符将 XPath 表达式作为其参数)来处理 HTML 文件。JSON 文件是名称/值对的集合或值的有序列表。您可以使用 XPATH_JSON 运算符(该运算符将 XPath 表达式作为其参数)来处理 JSON 文件。

  • <text>.XPATH(xpathex):

    对 XML 文件进行操作并返回布尔值。

    例如,如果一个名为“创建者”的节点存在于 XML 文件的前 1000 个字节内的节点“Book”下,则以下表达式返回布尔值 TRUE。

    HTTP.REQ.BODY(1000).XPATH(xp%boolean(//Book/creator)%)

    参数:

    xpathex - XPath 布尔表达式

  • <text>.XPATH(xpathex):

    在 XML 文件上操作并返回数据类型的值“double。“

    例如,如果字符串位于 XML 文件的前 1000 个字节中,则以下表达式将字符串“36”(价格值)转换为数据类型“double”的值:

    HTTP.REQ.BODY(1000).XPATH(xp%number(/Book/price)%)

    参数:

    Xpathex-XPath 数字表达式

示例:

<Book> <creator> <Person> <name>Milton</name> </Person> </creator> <title>Paradise Lost</title> </Book>
  • <text>.XPATH(xpathex):

    对 XML 文件进行操作并返回节点集或字符串。通过使用标准 XPath 字符串转换例程将节点集转换为相应的字符串。

    例如,以下表达式在正文的前 1000 个字节中选择由“/book/Creator”(节点集)封闭的所有节点:

    HTTP.REQ.BODY(1000).XPATH(xp%/Book/creator%)

    参数:

    xpathex - XPath 表达式

  • <text>.XPATH_HTML(xpathex)

    操作 HTML 文件并返回文本值。

    例如,如果在前 1000 个字节中找到<title\></title\> 标题 HTML 元素,以下表达式对 HTML 文件进行操作,并返回标签中包含的文本:

    HTTP.REQ.BODY(1000).XPATH_HTML(xp%/html/head/title%)

    参数:

    Xpathex-XPath 文本表达式

  • <text>.XPATH_HTML_WITH_MARKUP(xpathex)

    对 HTML 文件进行操作并返回一个字符串,该字符串包含文档的整个选定部分,包括诸如包含封闭元素标签之类的标记。

    以下表达式对 HTML 文件进行操作,并选择 <\title> 标记中的所有内容,包括标记。

    HTTP.REQ.BODY(1000).XPATH_HTML_WITH_MARKUP( xp%/html/head/title%)

    表达式选择的 HTML 正文部分将标记为进一步处理。

    参数:

    xpathex - XPath 表达式

  • <text>.XPATH_JSON(xpathex)

    对 JSON 文件进行操作并返回布尔值。

    例如,请考虑以下 JSON 文件:

    { "Book":{ "creator":{ "person":{ "name":’<name>’ } }, "title":’<title>’ } }

    以下表达式对 JSON 文件运行,如果 JSON 文件包含一个名为“创建者”的节点,其父节点在前 1000 个字节中为“Book”,则返回布尔值 TRUE:

    HTTP.REQ.BODY(1000).XPATH_JSON(xp%boolean(/Book/creator)%)

    参数:

    xpathex - XPath 布尔表达式

  • <text>.XPATH_JSON(xpathex)

    在 JSON 文件上操作并返回数据类型的值“double。“

    例如,请考虑以下 JSON 文件:

    { "Book":{ "creator":{ "person":{ "name":’<name>’ } }, "title":’<title>’, "price":"36" } }

    以下表达式对 JSON 文件运行,并将字符串“36” 转换为数据类型“double”的值(如果字符串存在于 JSON 文件的前 1000 个字节中)。

    HTTP.REQ.BODY(1000).XPATH_JSON(xp%number(/Book/price)%)

    参数:

    Xpathex-XPath 数字表达式

  • <text>.XPATH_JSON(xpathex)

    操作 JSON 文件并返回节点集或字符串。通过使用标准 XPath 字符串转换例程将节点集转换为相应的字符串。

    例如,请考虑以下 JSON 文件:

    { "Book":{ "creator":{ "person":{ "name":’<name>’ } }, "title":’<title>’ } }

    以下表达式选择 JSON 文件正文前 1000 个字节中由 “/Book”(节点集)括起来的所有节点,并返回相应的字符串值,即”<name><title>":

    HTTP.REQ.BODY(1000).XPATH_JSON(xp%/Book%)

    参数:

    xpathex - XPath 表达式

  • <text>.XPATH_JSON_WITH_MARKUP(xpathex)

    对 XML 文件进行操作并返回一个字符串,该字符串包含结果节点文档的整个部分,包括诸如包含封闭元素标签之类的标记。

    例如,请考虑以下 JSON 文件:

    {"Book":{ "creator":{ "person":{ "name":’<name>’ } }, "title":’<title>’ } }

    以下表达式对 JSON 文件进行操作,并在正文的前 1000 个字节中选择由“/book/Creator”封闭的所有节点,即“创建者:{人:{name: <name> ‘}}。“

    HTTP.REQ.BODY(1000).XPATH_JSON_WITH_MARKUP(xp%/Book/creator%)

    由表达式选择的 JSON 正文部分将标记为进一步处理。

    参数:

    xpathex - XPath 表达式

  • <text>.XPATH_WITH_MARKUP(xpathex):

    对 XML 文件进行操作并返回一个字符串,该字符串包含结果节点文档的整个部分,包括诸如包含封闭元素标签之类的标记。

    例如,以下表达式对 XML 文件进行操作,并在正文的前 1000 个字节中选择由“/book/Creator”封闭的所有节点。

    HTTP.REQ.BODY(1000).XPATH_WITH_MARKUP(xp%/Book/creator%)

    由表达式选择的 JSON 正文部分将标记为进一步处理。

    参数:

    xpathex - XPath 表达式

本内容的正式版本为英文版。部分 Cloud Software Group 文档内容采用了机器翻译,仅供您参考。Cloud Software Group 无法控制机器翻译的内容,这些内容可能包含错误、不准确或不合适的语言。对于从英文原文翻译成任何其他语言的内容的准确性、可靠性、适用性或正确性,或者您的 Cloud Software Group 产品或服务沿用了任何机器翻译的内容,我们均不作任何明示或暗示的保证,并且适用的最终用户许可协议或服务条款或者与 Cloud Software Group 签订的任何其他协议(产品或服务与已进行机器翻译的任何文档保持一致)下的任何保证均不适用。对于因使用机器翻译的内容而引起的任何损害或问题,Cloud Software Group 不承担任何责任。
XPath 和 HTML、XML 或 JSON 表达式