首页 / 操作系统 / Linux / 正则表达式基础及Java使用
正则表达式基础 正则表达式语法(1) 普通字符:字母,数字,汉子,下划线以及没有特殊定义的标点符号都是“普通字符”。表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符 简单的转义字符:
:代表换行符 :代表制表符 \ :代表本身 ^ ...... :代表匹配这字符本身 正则表达式语法(2) 标准字符集合: 能够与多种字符匹配的表达式 注意区分大小写,大写是相反的意思 d :任意一个数字,0~9中的任意一个 w:任意一个字母或者下划线或者汉字,也就是A~Z,a~z,0~9中的任意一个 s :包括空格,制表符,换行符等空白符中的任意一个。 . :小数点可以匹配任意一个字符 正则表达式语法(3) 自定义字符集合: [ ]方括号匹配方式,能够匹配方括号中任意一个字符 [ab5@]: 匹配方括号中的任意一个字符 [^abc]: 匹配除了abc以外的任意一个字符 [f-k]: 匹配“f”-“k”之间的任意一个字符 [^A-F0-3]: 匹配非A-F和非0-3的任意一个字符 正则表达式语法(4) 修饰匹配次数的特殊符号 {n}: 表达式重复n次 {m,n}: 表达式至少重复m次,最多重复n次 {m,}: 表达式至少重复m次 ?: 匹配表达式0次或者1次,相当于{0,1} + : 表达式至少出现1次,相当于{1,} * : 表达式不出现或者出现任意次,相当于{0,} 匹配次数中的贪婪模式,(匹配字符愈多愈好,默认) 匹配次数中的非贪婪模式(匹配字符越少越好,修饰匹配次数的特殊符号后再加上一个“?“号)。例子:d{2,4}?,这样就将模式改为非贪婪 正则表达式语法(5) 字符边界(本组标记匹配的不是字符而是位置,符合某种条件的位置) ^: 与字符串开始的位置匹配(以一行来算) $: 与字符串结束的地方匹配 : 匹配单词边界 //比如boy 则在boy右边不是边界的不匹配 在Java中使用正则表达式及常用函数 public class TestRegex { public static void main(String []args) { //Pattern p = Pattern.compile("^\d{4}"); //在java中的反斜杠要用两个前面一个转义,因为d中的做反义用 Pattern p = Pattern.compile("(\d{4})([a-z]{2})"); Matcher m = p.matcher("asdfsadfsafd2342314asdfsadf2342asdfsaf"); System.out.println(m.matches()); //匹配整个目标字符串 System.out.println(m.find()); //查找字符串 List<String> list = new ArrayList<String>(); //用来存储找到的group while(m.find()) //m.find()找到一个后就去找下一个了 { System.out.println(m.group()); //group(),group(0)的作用是一样的 System.out.println(m.group(0)); System.out.println(m.group(1)); System.out.println(m.group(2)); //如果写3的话会超出范围 list.add(m.group()); } String []str = "aa33fdf55cc".split("\d{2}"); //按照两个整数来切分 String str2 ="asd2dsfdfds".replaceAll("\ds", "**"); //将ds替换掉,生成新的字符串,因为前面是常量不可变 System.out.println("asdfsdf".matches("\w+")); //匹配字符串 } }Linux正则表达式特性及BRE与ERE的区别 http://www.linuxidc.com/Linux/2014-03/99152.htmgrep使用简明及正则表达式 http://www.linuxidc.com/Linux/2013-08/88534.htm正则表达式的用法 http://www.linuxidc.com/Linux/2013-03/81897.htm正则表达式之零宽断言 http://www.linuxidc.com/Linux/2013-03/81897.htmLinux中正则表达式与文件格式化处理命令(awk/grep/sed) http://www.linuxidc.com/Linux/2013-03/81018.htm基础正则表达式 http://www.linuxidc.com/Linux/2014-09/106296.htm常用正则表达式整理 http://www.linuxidc.com/Linux/2014-10/108076.htm本文永久更新链接地址 :http://www.linuxidc.com/Linux/2014-12/110698.htm
收藏该网址