正则--^$的用法总结

初学正则表达式,边学边记.下面是试验了^和$的用法:

package com.hf.regxTest.common;

import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * 测试行起始符号和结束符号
 * @author Administrator
 *
 */
public class Test1 {

  public static void test(String pString,String value){
   System.out.println("正则式:"+pString);
   System.out.println("值:"+value);
   Pattern p=Pattern.compile(pString);
   Matcher m = p.matcher(value);
   
   while(m.find()){
    int start=m.start();
    int end=m.end();
    System.out.println("start:"+start);
    System.out.println("end:"+end);
    String g = m.group();
    System.out.println("group:"+g);
    
   }
   System.out.println("/n");
  }
 /**
  * @param args
  */
 public static void main(String[] args) {
  /**
   * 测试起始字符:^
   */
  String pString="^w";
  String value="w";
  test(pString,value);
  /**
   * 测试结束字符:$
   */
  pString="w$";
  value="erw";
  test(pString,value);

  /**
   * 测试:^$,这表明只匹配这个c.a.t这三个字符
   */
  pString="^cat$";
  value="cat";
  test(pString,value);
  
  
  /**
   * 测试:^$,这表明匹配这个c.a.t这三个字符开头和结束的字符串,
   * 中间可以存在其他字符
   */
  pString="^cat(.*)cat$";
  value="catwwcat";
  test(pString,value);
  
  
  
  /**
   * 测试:^,这表明匹配行的开头,因为任何字符串都有开头,所以均会
   * 匹配到,没有意义
   */
  pString="^";
  value="dd";
  test(pString,value);
  
  
  /**
   * 测试:^$,这表明匹配行的开头,接着就是行结尾。所以匹配的
   * 应该是空行,即使是/n,tab等空白字符也匹配不到
  
   */
  pString="^$";
  value="";
  test(pString,value);
  
 }

}
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值