loadrunner中自定义查找并替换函数
2015-06-14 17:48
204 查看
globas.h中定义 //LoadRunner中没有直接的函数支持查找并替换字符串,因此可以封装一个lr_replace函数出来: // ---------------------------------------------------------------------------- char *strReplace(const char *src, const char *from, const char *to) { char *value; char *dst; char *match; int size; int fromlen; int tolen; size = strlen(src) + 1; fromlen = strlen(from); tolen = strlen(to); value = (char *)malloc(size); dst = value; if ( value != NULL ) { for ( ;; ) { match = (char *) strstr(src, from); if ( match != NULL ) { size_t count = match - src; char *temp; size += tolen - fromlen; temp = (char *)realloc(value, size); if ( temp == NULL ) { free(value); return NULL; } dst = temp + (dst - value); value = temp; memmove(dst, src, count); src += count; dst += count; memmove(dst, to, tolen); src += fromlen; dst += tolen; } else { strcpy(dst, src); break; } } } return value; } // ---------------------------------------------------------------------------- // ---------------------------------------------------------------------------- int lr_replace( const char *lrparam, char *findstr, char *replacestr ) { int res = 0; char *result_str; char lrp[1024]; sprintf( lrp, "{%s}", lrparam); result_str = strReplace( lr_eval_string(lrp), findstr, replacestr ); if (result_str != NULL ) { lr_save_string( result_str, lrparam ); free( result_str ); res = 1; } return res; }
在Action中定义:
login() { lr_save_string("This is a string", "MyPar"); //web_convert_param( "MyPar", // "SourceEncoding=PLAIN", // "TargetEncoding=URL", LAST); lr_output_message("%s", lr_eval_string("{MyPar}")); //lr_replace("MyPar", "+", "%20" ); //lr_output_message("%s", lr_eval_string("{MyPar}")); lr_replace("MyPar", "ing", "旺仔" ); //将Mypar中的ing字符串用旺仔替换 lr_output_message("%s", lr_eval_string("{MyPar}"));
相关文章推荐
- 面向对象分析设计
- sshfs命令挂载远程目录(debian centos)
- HTTP协议学习笔记
- 关于cocos2d-x 触屏事件不能接收的问题
- Oracle数据库之PL/SQL流程控制语句
- C++二插树和值与子树求解
- C/C++的学习 持续更新
- C语言文件处理-对图片取模数据的转换
- log4net 使用方法
- 重踏学习Java路上_Day03(java 基础上,运算符,IF等)
- 基于运营架构的办公流程能力平台
- Android 之 网络访问服务器,解析JSON数据(返回无乱码)
- DIRECTORY_SEPARATOR
- C++ 静态成员函数调用非静态成员函数方法
- Fabric不能启动后台进程问题
- POJ_Fibonacci POJ_3070(矩阵快速幂入门题,附上自己写的矩阵模板)
- 列表(1)
- libevent源码之TAILQ详解
- ORACLE EBS架构与管理基础(12.1.3)学习总结
- 多线程问题