正則表達式中的原字符

正則表達式中的原字符

文件number

1

5

10

50

100

500

1000

5000

12 34  #一個空格

12  34 #兩個空格

12   34 #三個空格

 

1. *: 匹配它前面字符的零個或多個出現, 如,

 

grep "[15]0*"  number

=>

1

5

10

50

100

500

1000

5000

 

grep "[15]00*" number

=>

10

50

100

500

1000

5000


grep "  *" number #兩個空格*來匹配“一個或多個空格”

=>

12 34

12  34

12   34

 

再例:

I can do it

I can not do it

I cannot do it

I can't do it

I cant do it

 

grep "can[ no']*t" cando

=>

I can not do it

I cannot do it

I can't do it

I cant do it

 

2. . : 匹配任何單個字符

I can do

I can not do it

I cannot do it

I can't do it

I cant do it

 

grep "can.*t" cando #匹配can與t之間至少一個字符的行

=>

I can not do it

I cannot do it

I can't do it

I cant do it

 

3. + : 匹配前面字符的一次或者多次出現

空格空格*  ==  空格+, 但注意的是在grep中,如果使用+爲正則表達式,要加/

grep " /+" number

=>

12 34

12  34

12   34

 

4. ? : 匹配零次或者一次出現, 不過在grep中使用,也要加 /

grep "10 /?" number #相當於 grep "10 *" number

=>

10

100

1000

 

5. .* : 將字符. 和 * 連接起來使用,可以匹配任意字符的零次或者多次出現

例:

book

booky

booklish

bookworm

 

grep "book.*" bookword

=>

book

booky

booklish

bookworm

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章