Java正则表达式

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
 public Test() {
 }
 public static void main(String[] args) {
  String release = "tcm release ,pre_released";
  //  \\*/(?!\\*),表示必须匹配*/但不包括*/*.
  //      字符.:代表所有的,除了...
        //  String reg = ".*released.*";
  //  String reg = "a|F"; //表示a或F   
  //  Pattern pattern = Pattern.compile("/\\*.*\\*/(?!\\*)",Pattern.DOTALL);
  //  matcher.end(),表示模式串在匹配串中的位置.
  String reg = "(.)*released(.)*";
  Pattern pattern = Pattern.compile(reg, Pattern.CASE_INSENSITIVE);
  Matcher match = pattern.matcher(release);
  boolean find = match.find();
  System.out.println("find==========="+find);
//  while(matcher.find())
//  {
//       matcher.start();
//       matcher.end();
//  }
 }
}

/*
 附 : 常用的正则表达式:
匹配特定数字:
^[1-9]d*$    //匹配正整数
^-[1-9]d*$   //匹配负整数
^-?[1-9]d*$   //匹配整数
^[1-9]d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]d*|0$   //匹配非正整数(负整数 + 0)
^[1-9]d*.d*|0.d*[1-9]d*$   //匹配正浮点数
^-([1-9]d*.d*|0.d*[1-9]d*)$  //匹配负浮点数
^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$  //匹配浮点数
^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$   //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$  //匹配非正浮点数(负浮点数 + 0)

匹配特定字符串:
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^w+$  //匹配由数字、26个英文字母或者下划线组成的字符串

特殊验证:
验证身份证号(15位或18位数字):“^d{15}|d{}18$”
验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”
正确格式为:“01”“09”和“1”“31”。
匹配中文字符的正则表达式: [u4e00-u9fa5]
匹配双字节字符(包括汉字在内):[^x00-xff]
匹配空行的正则表达式:n[s| ]*r
匹配HTML标记的正则表达式:/< (.*)>.*|< (.*) />/
匹配首尾空格的正则表达式:(^s*)|(s*$)
匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?

下面的字符将用于控制将一个子模式应用到匹配次数的过程.
? 重复前面的子模式0次到一次
* 重复前面的子模式0次或多次
+ 重复前面的子模式一次到多次

 

http://www.regexlab.com/zh/regref.htm

 

http://blog.csdn.net/pwlazy/archive/2005/04/13/346636.aspx
*/

你可能感兴趣的:(java,.net,正则表达式,F#,Blog)