loadrunner通过字符串左右边界提取字符串
/******
*函数名称:strcut
*函数说明:通过左边界、右边界,从字符串中截取子字符串
*注意事项:会申请新的内存,需要手动释放
******/
void strcut(char *strSrc, char* str, char *leftStr, char *rightStr)
{
char *st1, *st2;
int result, i = ;
i=strlen(leftStr);
st1 = (char*) strstr(strSrc, leftStr);
if (st1 != NULL){
st1 += i;
st2 = (char*) strstr(st1,rightStr);
if (st2 != NULL){
result = st2 - st1;
*(st1 + result) = '\0';
}
}
if ((st1 == NULL) || (st2 == NULL))
lr_error_message("Error: No substring found for the specified boundary");
else
lr_save_string(lr_eval_string(st1),str);
}

void strcut(char *strSrc, char* str, char *leftStr, char *rightStr)
{
char *st1, *st2;
int result, i = ;
i=strlen(leftStr);
st1 = (char*) strstr(strSrc, leftStr);
if (st1 != NULL){
st1 += i;
st2 = (char*) strstr(st1,rightStr);
if (st2 != NULL){
result = st2 - st1;
*(st1 + result) = '\0';
}
}
if ((st1 == NULL) || (st2 == NULL))
lr_error_message("Error: No substring found for the specified boundary");
else
lr_save_string(lr_eval_string(st1),str);
} Action()
{
lr_save_string("{\"code\": \"00000000\", \"msg\": \"成功\", \"transId\": \"f6079c11ac9d463bb219acba8bc3448c\",\"data\": {\"randId\":\"e02a104a4a2f421b93bdb8f6d9daf7c0\"}}","allRes2"); strcut(lr_eval_string("{allRes2}"), "randId", "randId\":\"","\"}"); lr_output_message("randId:%s",lr_eval_string("{randId}")); return ;
}

void web_reg_save_param_custom(char *sourceStr, char* outpuStr, char *leftBdry, char *rightBdry){
char *st1, *st2;
int result, i = 0;
i=strlen(leftBdry);
st1 = (char*) strstr(sourceStr, leftBdry);
if (st1 != NULL){
st1 += i;
st2 = (char*) strstr(st1, rightBdry);
if (st2 != NULL){
result = st2 - st1;
*(st1 + result) = '\0';
}
}
if ((st1 == NULL) || (st2 == NULL))
lr_error_message("Error: No substring found for the specified boundary");
else
lr_save_string(lr_eval_string(st1), outpuStr);
}
Action()
{
lr_save_string("xyzToken3234344endKey,","test");
web_reg_save_param_custom(lr_eval_string("{test}"), "Outputtest", "Token","endKey");
lr_output_message("切割后的值=%s",lr_eval_string("{Outputtest}"));
return 0;
}
深圳湖北籍软件测试群 275212937
loadrunner通过字符串左右边界提取字符串的更多相关文章
- loadrunner通过字符串左右边界切割字符串
void web_reg_save_param_custom(char *sourceStr, char* outpuStr, char *leftBdry, char *rightBdry){ ...
- 字串符相关 split() 字串符分隔 substring() 提取字符串 substr()提取指定数目的字符 parseInt() 函数可解析一个字符串,并返回一个整数。
split() 方法将字符串分割为字符串数组,并返回此数组. stringObject.split(separator,limit) 我们将按照不同的方式来分割字符串: 使用指定符号分割字符串,代码如 ...
- 使用Java正则表达式提取字符串中的数字一例
直接上代码: String reg = "\\D+(\\d+)$"; //提取字符串末尾的数字:封妖塔守卫71 == >> 71 String s = monster. ...
- C++ 提取字符串中的数字
C++ 提取字符串中的数字 #include <iostream> using namespace std; int main() { ] = "1ab2cd3ef45g&quo ...
- [原]Java面试题-将字符串中数字提取出来排序后输出
[Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...
- 【Teradata SQL】从中文数字字母混合字符串中只提取数字regexp_substr
目标:从中文数字字母的字符串中只提取数字 sel regexp_substr('mint choc中文11国1','\d+')
- 提取字符串substring()
substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法: stringObject.substring(startPos,stopPos) 参数说明: 注意: 1. 返回的内 ...
- fortran中提取字符串中可见字符的索引
fortran中常常需要提取字符串中可见字符的索引,下面是个小例子: !============================================================= su ...
- Swift3 Scanner用法之判断是否数字、提取字符串里的数字
1.判断是否数字 /// 判断是否是数字 /// /// - Parameter string: <#string description#> /// - Returns: <#re ...
随机推荐
- Web打印的解决方案之证件套打
由于以前未接触过套打,一直觉得套打是一个比较神秘和麻烦的事情,因为打印机的位置总是需要调整的,你总不能硬编码吧?但是如果位置可调,有需要直观一些来处理,那就比较麻烦了. 在前面介绍过<Web打印 ...
- SpringMVC 事件监听 ApplicationListener
1. 实现 ApplicationListener<T> 接口(T为监听类型,稍后会列出具体可监听事件) 2. 将该自定义监听类,注册为Spring容器组件.(即将该类注入Spring容器 ...
- 运维笔记--线上服务器git环境配置
场景描述: 我们采用git去管理代码分支,本地开发环境,线上服务器多数情况下也会使用git去管理程序代码,那么新的一台服务器,如果指定了目标路径作为代码存放路径,该如何配置git环境, 以达到跟远程服 ...
- win7环境下,vagrant,在启动虚拟机的时候报错io.rb:32:in `encode': incomplete "\xC8" on GBK (Encoding::InvalidByteSequenceError)
描述: 这几天在windows环境上,部署了vagrant,在启动虚拟机的时候报错: [c:\~]$ vagrant upBringing machine 'default' up with 'vir ...
- Chrome禁用software_reporter_tool
今天开机后,从几分钟到半个小时之间,感觉机器反应有些慢,发现CPU占用80-90%.查看任务管理器, 有一个 software_reporter_tool.exe 的程序占用了一半的CPU使用率. 转 ...
- vue install 组件
import share from './index.vue' export default { install: (Vue) => { Vue.prototype.$share = (opti ...
- 阿里开源 OpenJDK 发行版 Dragonwell
日有消息显示,阿里将于 21 日重磅发布其 OpenJDK 发行版 Alibaba Dragonwell. 我们知道 OpenJDK 是基于 GPL v2/Classpath Exception 的 ...
- CPU时序信号和分频
- SpringBoot读取Linux服务器某路径下文件\读取项目Resource下文件
// SpringBoot读取Linux服务器某路径下文件 public String messageToRouted() { File file = null; try { file = Resou ...
- 【记录】【mysql】的REPLACE()用法
操作前数据 操作 UPDATE `test_replace` SET PASSWORD ') WHERE id REPLACE(PASSWORD, '1', '77')意思就是password中的1替 ...