1:正则表达式(理解)

(1)正则表达式 满足某种规则的字符串

(2)要掌握的规则

1:字符

x 字符 x 

\\ 反斜线字符

\n 换行符



2:字符类

[abc] a、b 或 c

[^abc] 任何字符,除了 a、b 或 c

[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内

[0-9] 0-9的数字字符



3:预定义字符类

. 任何字符

\d 数字:[0-9]

\D 非数字: [^0-9] 

\w 单词字符:[a-zA-Z_0-9]

单词字符:英文字母,数字,下划线

\W 非单词字符:[^\w] 



4:边界匹配器

^ 行的开头 

$ 行的结尾 

\b 单词边界 



5:Greedy 数量词

X? X,一次或一次也没有

X* X,零次或多次 

X+ X,一次或多次 

X{n} X,恰好 n 次 

X{n,} X,至少 n 次 

X{n,m} X,至少 n 次,但是不超过 m 次 



6:组的概念

假如这是一个表达式:((A)(B(C))) ,那么如果按照组的概念来说,它应该分为以下几个组:

第一组:(A)(B(C))

第二组:A

第三组:B(C)

第四组:C

(3)正则表达式的使用

A:判断功能

String -- matches()

B:切割功能

String -- split()

C:替换功能

String -- replaceAll()

D:获取功能

Pattern

compile

Matcher

find

group

(4)案例

邮箱的校验

我要学编程

ip地址排序



2:反射(理解)

(1)反射 通过运行时类的class文件对象,使用其的所有成员。

(2)获取class文件对象的三种方式

A:Object类的getClass()方法

B:一个静态属性 .class

C:Class类的静态方法forName

(3)反射的使用

A:构造方法

B:成员变量

C:成员方法

(4)案例

A:使用配置文件来运行类中的方法

B:反射越过编译期间的检查