1. /******
  2. *函数名称:strcut
  3. *函数说明:通过左边界、右边界,从字符串中截取子字符串
  4. *注意事项:会申请新的内存,需要手动释放
  5. ******/
  6. void strcut(char *strSrc, char* str, char *leftStr, char *rightStr)
  7. {
  8. char *st1, *st2;
  9. int result, i = ;
  10. i=strlen(leftStr);
  11. st1 = (char*) strstr(strSrc, leftStr);
  12. if (st1 != NULL){
  13. st1 += i;
  14. st2 = (char*) strstr(st1,rightStr);
  15. if (st2 != NULL){
  16. result = st2 - st1;
  17. *(st1 + result) = '\0';
  18. }
  19. }
  20. if ((st1 == NULL) || (st2 == NULL))
  21. lr_error_message("Error: No substring found for the specified boundary");
  22. else
  23. lr_save_string(lr_eval_string(st1),str);
  24. }

  1. void strcut(char *strSrc, char* str, char *leftStr, char *rightStr)
  2. {
  3. char *st1, *st2;
  4. int result, i = ;
  5. i=strlen(leftStr);
  6. st1 = (char*) strstr(strSrc, leftStr);
  7. if (st1 != NULL){
  8. st1 += i;
  9. st2 = (char*) strstr(st1,rightStr);
  10. if (st2 != NULL){
  11. result = st2 - st1;
  12. *(st1 + result) = '\0';
  13. }
  14. }
  15. if ((st1 == NULL) || (st2 == NULL))
  16. lr_error_message("Error: No substring found for the specified boundary");
  17. else
  18. lr_save_string(lr_eval_string(st1),str);
  19. }
  20.  
  21. Action()
  22. {
  23. lr_save_string("{\"code\": \"00000000\", \"msg\": \"成功\", \"transId\": \"f6079c11ac9d463bb219acba8bc3448c\",\"data\": {\"randId\":\"e02a104a4a2f421b93bdb8f6d9daf7c0\"}}","allRes2");
  24.  
  25. strcut(lr_eval_string("{allRes2}"), "randId", "randId\":\"","\"}");
  26.  
  27. lr_output_message("randId:%s",lr_eval_string("{randId}"));
  28.  
  29. return ;
  30. }

  1. void web_reg_save_param_custom(char *sourceStr, char* outpuStr, char *leftBdry, char *rightBdry){     
  2.  
  3. char *st1, *st2;
  4.  
  5. int result, i = 0;
  6.  
  7. i=strlen(leftBdry);
  8.  
  9. st1 = (char*) strstr(sourceStr, leftBdry); 
  10.  
  11. if (st1 != NULL){ 
  12.  
  13. st1 += i;
  14.  
  15. st2 = (char*) strstr(st1, rightBdry);
  16.  
  17. if (st2 != NULL){
  18.  
  19. result = st2 - st1;
  20.  
  21. *(st1 + result) = '\0';
  22.  
  23. }     
  24. }  
  25.  
  26. if ((st1 == NULL) || (st2 == NULL))
  27.  
  28. lr_error_message("Error: No substring found for the specified boundary");
  29.  
  30. else  
  31.  
  32. lr_save_string(lr_eval_string(st1), outpuStr); 
  33. }
  34.  
  35. Action()
  36. {
  37.  
  38. lr_save_string("xyzToken3234344endKey,","test"); 
  39.  
  40. web_reg_save_param_custom(lr_eval_string("{test}"), "Outputtest", "Token","endKey");  
  41.  
  42. lr_output_message("切割后的值=%s",lr_eval_string("{Outputtest}")); 
  43.  
  44. return 0;
  45. }

深圳湖北籍软件测试群 275212937

loadrunner通过字符串左右边界提取字符串的更多相关文章

  1. loadrunner通过字符串左右边界切割字符串

    void web_reg_save_param_custom(char *sourceStr, char* outpuStr, char *leftBdry, char *rightBdry){    ...

  2. 字串符相关 split() 字串符分隔 substring() 提取字符串 substr()提取指定数目的字符 parseInt() 函数可解析一个字符串,并返回一个整数。

    split() 方法将字符串分割为字符串数组,并返回此数组. stringObject.split(separator,limit) 我们将按照不同的方式来分割字符串: 使用指定符号分割字符串,代码如 ...

  3. 使用Java正则表达式提取字符串中的数字一例

    直接上代码: String reg = "\\D+(\\d+)$"; //提取字符串末尾的数字:封妖塔守卫71 == >> 71 String s = monster. ...

  4. C++ 提取字符串中的数字

    C++ 提取字符串中的数字 #include <iostream> using namespace std; int main() { ] = "1ab2cd3ef45g&quo ...

  5. [原]Java面试题-将字符串中数字提取出来排序后输出

    [Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...

  6. 【Teradata SQL】从中文数字字母混合字符串中只提取数字regexp_substr

    目标:从中文数字字母的字符串中只提取数字 sel regexp_substr('mint choc中文11国1','\d+')

  7. 提取字符串substring()

    substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法: stringObject.substring(startPos,stopPos)  参数说明: 注意: 1. 返回的内 ...

  8. fortran中提取字符串中可见字符的索引

    fortran中常常需要提取字符串中可见字符的索引,下面是个小例子: !============================================================= su ...

  9. Swift3 Scanner用法之判断是否数字、提取字符串里的数字

    1.判断是否数字 /// 判断是否是数字 /// /// - Parameter string: <#string description#> /// - Returns: <#re ...

随机推荐

  1. 暗黑战神! Unity3D网游ARPG实战案例

    前面开发了几个单机小游戏,该是时候挑战一下网络游戏方面的开发了! 3D网游ARPG实战案例(第二季),使用Unity2017.3版本制作 内容包括 服务端部分 1.网络通信编码,协议及传输 2.数据驱 ...

  2. 把ngnix注册为linux服务 将Nginx设置为linux下的服务 并设置nginx开机启动

    一.创建服务脚本 vim /etc/init.d/nginx 脚本内容如下 #! /bin/sh# chkconfig: - 85 15 PATH=/usr/local/nginx/sbin/ DES ...

  3. servlet是什么?servlet到底是啥?

    #说实话 这个鬼servlet我听说过它好多年了,但是我真的不知道它到底是干啥用的.内心里总觉得这是个很复杂的,绝对是让人难以理解的东西,我真的感觉自己很抗拒它,不想知道,不想去了解.可是我还是不得不 ...

  4. Centos7.5 php7.2 安装pdo_sqlsrv 连接 sql server(转)

    Centos7.5 php7.2 安装pdo_sqlsrv 连接 sql server 转:https://blog.csdn.net/gdali/article/details/82912542   ...

  5. java中map和对象互转工具类的实现示例

    在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且用起来也还算方便,比如像fastJson就可以轻松实现map ...

  6. Android Studio Error:Execution failed for task ':app:compileDebugJavaWithJavac' 根本解决方法

    造成这种异常的原因有很多.具体的还是要去终端编译,查看到底是什么地方出错了,然后具体问题具体分析. 终端进入项目的根目录,然后输入命令 gradlew compileDebugJavaWithJava ...

  7. matlab学习笔记13_2匿名函数

    一起来学matlab-matlab学习笔记13函数 13_2 匿名函数 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 https://ww2.mathworks.cn/help/m ...

  8. 【LeetCode算法-53】Maximum Subarray

    Given an integer array nums, find the contiguous subarray (containing at least one number) which has ...

  9. python |elasticsearchs操作es的例子

    from elasticsearch import Elasticsearch import json import time es = Elasticsearch(['es地址:9200'],ign ...

  10. Celery-系统守护进程

    1. 使用systemd控制Celery 用法: systemctl {start|stop|restart|status} celery.service 配置文件: /etc/celery/cele ...