目录
正则表达式
昨天简单的介绍了一下正则表达式(好吧,就说了一句)。个人觉得这个玩意挺神奇,挺好玩,但是我不容易直接表述的很清楚。就简单讲点理论上的东西吧。
1. 正则表达式是一个用于匹配字符串的模板。实际上,任意字符串都可以当成正则表达式使用,例如“abc”,它也是一个正则表达式,只是它只能匹配“abc”字符串。
2. 创建正则表达式:
创建正则表达式就是创建一个特殊的字符串。在这个表达式中,有很多的字符,预定义字符、边界匹配符、特殊字符等。具体大家自行百度好了。
正则表达式支持的数量标识符有如下几种模式:
(1)Greedy(贪婪模式)
(2)Reluctant(勉强模式)
(3)Possessive(占有模式)
3. 使用正则表达式:
一旦在程序中定义了正则表达式,就可以使用Pattern和Matcher来使用正则表达式。
Pattern对象是正则表达式编译后在内存中的表示形式,因此,正则表达式字符串必须先被编译成Pattern对象,然后再利用Pattern对象创建对应的Matcher对象。执行匹配所涉及的状态保留在Matcher对象中,多个Matcher对象可共享同一个Pattern对象。
通过Matcher类的find()和group()方法可以从目标字符串中依次取出特定子串。
举个栗子:
上面展示的是在一些文字中自动寻找出电话号码的代码。
红框中的就是在创建Pattern和Matcher对象,目的是寻找电话号码,引号中的含义是:13开头或者15开头,后面随意跟一个阿拉伯数字,然后再随意跟8个数字的字符串。下面的蓝框就是通过find和group方法获得所需要的字符串。结果如下:
还是很神奇的对吧!如果程序再进一步,可以从网上提取超链接信息,再根据超链接打开其他网页,然后再其他网页上重复这个过程就可以实现简单的网络爬虫了。
其实还有很多比较好的操作,但是我不想写~后面就是什么国际化与格式化什么的,现在不想看~第七章过了~~噢耶!!!
Java集合
java集合类是一种特别有用的工具类,可用于存储适量不等的对象,并可以实现常用的数据结构,如栈、队列等。除此之外,Java集合还可用于保存具有映射关系的关联数组。Java集合大致可以分为Set、List、Queue和Map四种体系,其中Set表示无序,不可重复的集合;List表示有序,重复的集合;而Map表示既有映射关系的集合;Java5又增加了Queue体系集合,代表一种队列集合实现。
Java集合概述
为了保存数量不确定的数据,以及保存具有映射关系的数据(也被称为关联数组),Java提供了集合类。集合类主要负责保存、盛装其他数据,因此集合类也被称为容器类。
集合类和数组不一样,数组元素既可以是基本类型的值,也可以是对象;而集合里只能保存对象。
Java的集合类主要是由两个接口派生而出:Collection和Map。
将Java所有集合分成三大类:Set集合、List集合、Map集合。