loadrunner Lr_类函数之 lr_xml_replace()

lr_xml_replace()

替换XML字符串的片段。

int lr_xml_replace(<规范列表> [,<可选规范列表]],[LAST]);

 

参数说明:

List of specifications:对于以下所需规格列表,请使用以下字符串格式:

“Specification = value”

    XML:要查询的XML输入字符串

    ResultParam:替换新值后包含XML数据的输出参数的名称

    查询:对输入字符串XML的XML查询。

    选择以下选项之一:

    XmlFragment:用作替换查询match-an元素或属性的字符串值。

    要么:

    XmlFragmentParam:包含要用作替换的字符串值的参数的名称

List of optional specifications:可选规格列表,对于以下可选规格列表,请使用以下字符串格式:

“Specification = value”

    SelectAll:如果为“yes”,则将处理与查询匹配的所有元素。如果“否”,则仅处理第一个匹配。默认值为“no”。请参阅多查询匹配

    NotFound:请参见继续出错

LAST:表示可选规范列表结束的标记

 

lr_xml_replace函数查询XML输入字符串XML以查找与查询条件匹配的值,并将它们替换为XmlFragment或XmlFragmentParam作为查询匹配的元素的值。您可以通过在XML查询中指定其元素名称或属性来替换元素。使用源文档编码将生成的字符串放在ResultParam中。

如果有多个值要替换,则传递“XmlFragmentParam =”规范。将值存储在一系列参数中,名称为:

Param_1,Param_2,Param_3,...

其中Param是值“XmlFragmentParam = Param”。 lr_xml_replace将Query的每个连续匹配替换为系列中下一个参数的值。有关多值查询的示例,请参阅lr_xml_set_values。

 

示例:lr_xml_replace

以下示例将员工的电话分机号码从2145更改为4444.它在输入字符串xml_input中搜索标签“<extension>”,并将该标签替换为包含数字4444的XML片段(“XmlFragment = <extension> 4444 </ extension>“)。结果字符串包含在ResultParam参数Result中。

 

有关使用lr_xml_replace的更多示例,请参阅替换和插入XML查询的示例脚本中的元素。

#include“as_web.h”

char * xml_input =

“<acme_org>”

     “<employee>”

          “<name> John Smith </ name>”

          “<cubicle> 227 </ cubicle>”

          “<extension> 2145 </ extension>”

     “</ employee>”

“</ acme_org>”;

 

Action(){

     lr_save_string(xml_input,“XML_Input_Param”);

     lr_xml_replace(“XML = {XML_Input_Param}”,“ResultParam = Result”,

               “Query = / acme_org / employee / extension”,

               “XmlFragment = <extension> 4444 </ extension>”,LAST);

     lr_output_message(lr_eval_string(“Replace after String:{Result}”)));

     return 0;

}}

 

输出:

Action.c(20):替换后的字符串:<acme_org> <employee> <name> John Smith </ name> <cubicle> 227 </ cubicle> <extension> 4444 </ extension> </ employee> </ acme_org>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值