java正则表达式

1.java正则表达式

   \\d表示数字  \\d+表示一到多个数字  \\d*表示匹配一个数字零次或者多次  \\d?匹配一个数字零次或一次

   \w 等价于[A-Za-z0-9]  \W等价于[^A-Za-z0-9]    

   \s 匹配任何空白字符 等价于[\f\n\r\t\v]  \S 匹配任何非空白字符 等价于[^\f\n\r\t\v]

   \d 匹配一个数字        \D匹配一个非数字

   \b匹配一个字边界,即字与空格间的位置。例如,"er\b"匹配"never"中的"er",但不匹配"verb"中的"er"    \B  非字边界匹配。"er\B"匹配"verb"中的"er",但不匹配"never"中的"er"。

  [a-z]字符范围。匹配指定范围内的任何字符。例如,"[a-z]"匹配"a"到"z"范围内的任何小写字母。   [^a-z]反向范围字符。匹配不在指定的范围内的任何字符。例如,"[^a-z]"匹配任何不在"a"到"z"范围内的任何字符。

  . 匹配除"\r\n"之外的任何单个字符。

  [\s\S]  若要匹配包括"\r\n"在内的任意字符,

  

2.java正则表达式实例 

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches
{
    public static void main( String args[] ){

      // 按指定模式在字符串查找
      String line = "This order was placed for QT3000! OK?";
      String pattern = "(.*)(\\d+)(.*)";

      // 创建 Pattern 对象
      Pattern r = Pattern.compile(pattern);

      // 现在创建 matcher 对象
      Matcher m = r.matcher(line);
      if (m.find( )) {
         System.out.println("Found value: " + m.group(0) );
         System.out.println("Found value: " + m.group(1) );
         System.out.println("Found value: " + m.group(2) );
      } else {
         System.out.println("NO MATCH");
      }
   }
}

 

posted @ 2016-06-28 11:50  侧耳倾听的世界  阅读(220)  评论(0编辑  收藏  举报