You are on page 1of 31

NGN NG LP TRNH

JAVA
1
Ni dung
Bin, t kho,
kiu d liu
Lp trnh hng
i tng
Biu thc, cc
cu trc iu
khin
D liu kiu
mng
C bn v ngn ng lp trnh Java
Thit k lp
nng cao
Thit k lp
Cc kha cnh nng cao ca lp trnh hng i tng
X l ngoi l
Java Collection
Framework
Generics
Network
Programming
2
Multithread&
Concurrency
Database
Programming
Send mail Testing
Regular
Expression
REGULAR EXPRESSION
3
Ni dung
1. Gii thiu v RegEx
2. M t pattern tm kim
1. Xu bnh thng & K t c bit
2. Cc lp k t
3. Cc b ng
4. Nhm k t
5. So khp bin
3. Tm kim v thay th
4
1. Gii thiu v Regular Expression
Biu thc chnh quy l mt cch thc m t mt tp
cc xu da trn cc c tnh chung ca xu.
C th c s dng tm kim, thao tc, v son tho
cc on vn bn, d liu
Cn phi hiu c c php c bn ca Reg Ex => c
th lm vic vi bt c biu thc chnh quy trn bt k
ngn ng no.
Reg Ex trong java tng t Reg Ex trong ngn ng Pearl

5
1. Gii thiu v Regular Expression
Trong Java : Reg Ex c h tr bi gi java.util.regex
Vi 3 lp: Pattern, Matcher, v PatternSyntaxExpression
Pattern: 1 i tng lp Pattern l mt biu din ca 1
biu thc chnh quy
Pattern class ko cung cp cc public constructors
to 1 pattern, phi gi mt trong cc phng thc public static
compile
Matcher: 1 t lp Matcher l mt my phin dch cc
pattern v sau thc hin so khp vi mt xu u vo.
Matcher cng ko cung cp cc public constructors
Phi gi matcher method trn 1 /t pattern
PatternSyntaxException : cha cc unchecked exception,
ch nh cc li c php trong 1 reg ex pattern

6
RegexTestHarness

7
2. M t xu
2.1 Xu bnh thng & K t c bit
8
2. M t xu
2.1 Xu bnh thng & K t c bit
9
<([{\^-=$!|]})?*+.>

Cc k t c bit h tr vic biu din v so khp cc
xu trong pattern
C 2 cch coi 1 k t c bit l k t thng thng
t k t backslash \ trc k t c bit
t trong cp \Q v \E
2.2 Cc lp k t
Dng thc n gin nht l t mt tp cc k t gia cp
ngoc [ ], th hin cc tu chn so khp
10
Simple class [bcr]at

11
Negation [^bcr]at

12
Ranges [a-c]

13
Unions [0-4[6-8]]

14
Intersections

15
Intersection of two ranges
16
Subtraction

17
Predefined Character Classes

18
Predefined Character Classes (ex)

19
Predefined Character Classes (ex)

20
2.3 Quantifiers ?*+{n,m}
RegEx ngha
X? X, once or not at all
X* X, zero or more times
X+ X, one or more times
X{n} X, exactly n times
X{n,} X, at least n times
X{n,m} X, at least n but not more than m times
21
Zero-length matches

22
Zero-length matches (cont)

23
2.4. Nhm k t vi ( )
Nhm k t c s dng nhm nhiu k t li nh l
mt n v duy nht, t trong cp ( )
24
2.5 So khp bin

25
2.5 So khp bin (cont)
^ matches the beginning of a line, and $ matches the end.
26
2.5 So khp bin (cont)
To check if a pattern begins and ends on a word boundary
(as opposed to a substring within a longer string), just
use \b on either side; for example, \bdog\b


27
2.5 So khp bin (cont)
To match the expression on a non-word boundary,
use \B instead:

28
2.5 So khp bin (cont)
To require the match to occur only at the end of the
previous match, use \G:
29
3. Tm kim v thay th

30
Renames files of a give directory

31

You might also like