好风的老巢

珍惜生命,也许真的不是为了自己,只是为了爱我们的人

正则--^$的用法总结

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

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);
  
 }

}
 

阅读更多
个人分类: JAVA正则
上一篇用正则进行字符串切分的一个应用
下一篇正则--[]的用法总结
想对作者说点什么? 我来说一句

Api个人总结

2017年07月06日 1.37MB 下载

JavaScript最简单的验证手法

2008年10月31日 12KB 下载

JScript中正则表达式用法详解

2009年12月05日 51KB 下载

正则运用总结TXT阅读文档

2009年07月19日 1003B 下载

正则表达式必知必会_画圈圈版

2014年11月25日 14.72MB 下载

const 用法总结.

2008年08月27日 22KB 下载

没有更多推荐了,返回首页

关闭
关闭