获取字符串出现的次数,下面两种方法,为什么两种不同结果
方法一:
y=atoi(lr_eval_string("{what_count}"));
lr_output_message("符合条件的记录有 %s条",y);
运行出现
vuser_end.c(6): Error: C-interpreter run time error: vuser_end.c (6): Error -- memory violation : Exception ACCESS_VIOLATION received.
vuser_end.c(6): Notify: CCI trace: vuser_end.c(6): LrsCleanup()
查资料提示是内存冲突,请教高手们,怎么解决?
方法二:
lr_output_message("符合条件的记录有 %s条",lr_eval_string("{what_count}"));
用此方法可以通过运行。
如果用D代替了S,同时web_reg_save_parma中的属性值有ORD这个,动行结果是正确的,但是如果没有ORD这个,那结果仍是有错误的,记录条数仍为0,何解?
ORD : 说明第几次出现的左边界子串的匹配项才是需要的内容。该属性可有可无,缺省值是1。如为All,则将所有找到的内容储存起来。
%d 表示按十进制整型输出
%s 表示输出的是一个字符串
脚本如下:
Action()
{
int x;
int y;
web_reg_save_param("what",
"LB=
",
"RB=",
// "Ord=All",
"saveoffset=0",
"saveLen=12",
"search=body",
LAST);
web_url("mytest",
"URL=http://127.0.0.1:8888/mytest/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST);
//方法一
y=atoi(lr_eval_string("{what_count}"));
lr_output_message("符合条件的记录有 %d 条",y);
//方法二
// lr_output_message("temp=%s",lr_eval_string("{what}"));
lr_output_message("符合条件的记录有 %s 条",lr_eval_string("{what_count}"));
。。。。
}
谢谢,只是还不明白那个weg_reg_save_parma为什么一定要用到Ord(两种情况下都必须要,我试验过了),似乎和那个“该属性可有可无,缺省值是1。”不相符。