转载自:http://www.cnblogs.com/quange/archive/2010/06/11/1756260.html
http://blog.sina.com.cn/s/blog_670bfea20100htbq.html
正则表达式之:()
(1). 在被修饰匹配次数的时候,括号中的表达式可以作为整体被修饰
(2). 取匹配结果的时候,括号中的表达式匹配到的内容可以被单独得到
也有取符合要求的字符的含义,如(\w):其中\w是匹配单个字符,那这样的话,如果db这样的字符串它是匹配不到的,但是加上括号()后它就可以匹配到其 中的字符了,这里括号的涵义是提取出只要有满足要求的:如db中d和b都单独满足\w的要求,但是合到一起就不满足了,这里用了()后就可以匹配到单独的 d和b了
加入“后置处理器”->“正则表达式提取器”:
引用名称即使用的参数名;填入正则表达式;模板选取匹配的组(模板:此处填写$1$,如果有两个表达式,则可以设置为$1$,$2$);匹配数字为匹配的个数,负数表示全部匹配;缺省值为没有匹配到时的取值。
示例中用正则表达式匹配出产品id作为后续使用的参数。
将匹配数字设为-1,调用时用${product_id_1},${product_id_2},${product_id_3}……;如果想要得到匹配出的参数的个数,用${product_id_matchNr};如果想随机选取其中一个,只需将匹配数字设为0,使用${product_id}调用即可。
可 以一次匹配多组;示例中只匹配了一个,假如正则表达式为name="chkProductIds" id="chk(.+?)" value="(.+?)",就会有两组参数;想获得匹配到的组个数用${product_id_g};模板针对的是匹配到的字符串再做组的区分,比如希 望${product_id}取出的是第二组参
1、找到所有小数的数字,比如10.2
引用名称:aa
正则表达式:[0-9]+\.[0-9]+
模板:$0$
区配数字: -1
调用:
${aa_1}:取出第一个满足要求的数字
${aa_2}:取出第二个满足要求的数字
2、找到所有小数点后的数字
引用名称:aa
正则表达式:([0-9]+)\.([0-9]+) 必须用括号分组
模板:$2$ 第二组
区配数字: -1 取出所有符合要求的
调用:
${aa_1}:取出第一个满足要求的数字
${aa_2}:取出第二个满足要求的数字
3、找到第一个有小数的数字
引用名称:aa
正则表达式:([0-9]+)\.([0-9]+) 必须用括号分组
模板:不写可以,也可以{1},{2}
区配数字: 1 第一个
调用:
${aa_g1}:取出满足要求的第一组数字
${aa_g2}:取出满足要求的第二组数字
4、找到所有小数的数字
引用名称:aa
正则表达式:([0-9]+)\.([0-9]+) 必须用括号分组
模板:不写可以,也可以{1},{2}
区配数字: -1 取出所有符合要求的
调用:
${aa_1_g1}:取出第一个满足要求的第一组数字
${aa_1_g2}:取出第一个满足要求的第二组数字
${aa_2_g1}:取出第一个满足要求的第一组数字
${aa_2_g2}:取出第一个满足要求的第二组数字