自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

實例解說Perl 字符匹配用法

開發(fā) 架構(gòu)
Perl 字符匹配的概念你是否了解,這里向大家簡單介紹一下,在perl語言中因為有這個功能,所以對于字符串的處理能力是非常強有力的。

本文和大家重點討論一下Perl 字符匹配的概念及應(yīng)用,regularexpression可視為用來處理字符串的一種模式(pattern),其使用的格式為/pattern/。在perl語言的程序中,經(jīng)??梢钥吹筋愃普Z法的應(yīng)用,在cgi程序設(shè)計中也不例外。只要能夠善用文字處理模式的話,要處理任何難的字符串皆可迎刃而解,

Perl 字符匹配實例解說

如果在unix中曾經(jīng)使用過sde,awk,grep這些指令的話,相信對于perl語言中的文字處理模式(regularexpression)應(yīng)該不會感到陌生才對。在perl語言中因為有這個功能,所以對于字符串的處理能力是非常強有力的。regularexpression可視為用來處理字符串的一種模式(pattern),其使用的格式為/pattern/。在perl語言的程序中,經(jīng)??梢钥吹筋愃普Z法的應(yīng)用,在cgi程序設(shè)計中也不例外。只要能夠善用文字處理模式的話,要處理任何難的字符串皆可迎刃而解,在本章中筆者會用深入淺出的方式來介紹regularexpression的用法。

一、Perl 字符匹配的文字處理模式中,/pattern/常用到的語法

/pattern/結(jié)果
除了換行字符\n外,找尋只有一個字符的字符串

x?找尋0個或是1個x字符
x*找尋0個或是0個以上的x字符
.*找尋0個或是0個以上的任何字符
x+找尋0個或是1個以上的x字符
.+找尋1個或是1個以上的任何字符

{m}找尋剛好是m個個數(shù)指定的字符
{m,n}找尋在m個數(shù)個數(shù)以上,n個個數(shù)以下指定的字符
{m,}找尋m個個數(shù)以上指定的字符
[]找尋符合[]內(nèi)的字符
[^]找尋不符合[]內(nèi)的字符
[0-9]找尋符合0到9的任何一個字符
[a-z]找尋符合a到z的任何一個字符
[^0-9]找尋不符合0到9的任何一個字符
[^a-z]找尋不符合a到z的任何一個字符
^找尋字符開頭的字符
$找尋字符結(jié)尾的字符

\d找尋一個digit(數(shù)字)的字符,和[0-9]語法一樣
\d+找尋一個digit(數(shù)字)以上的字符串,和[0-9]+語法一樣
\d找尋一個non-digit(非數(shù)字)的字符,和[^0-9]語法一樣
\d+找尋一個non-digit(非數(shù)字)以上的字符,和[^0-9]+語法一樣
\w找尋一個英文字母或是數(shù)值的字符,和[a-za-z0-9]語法一樣
\w+找尋一個以上英文字母或是數(shù)值的字符,和[a-za-z0-9]+語法一樣
\w找尋一個非英文字母,數(shù)值的字符,和[^a-za-z0-9]語法一樣
\w+找尋一個以上非英文字母,數(shù)值的字符,和[^a-za-z0-9]+語法一樣
\s找尋一個空白的字符,和[\n\t\r\f]一樣
\s+找尋一個以上空白的字符,和[\n\t\r\f]+一樣

\s找尋一個非空白的字符,和[^\n\t\r\f]一樣
\s+找尋一個以上非空白的字符,和[^\n\t\r\f]+一樣
\b找尋一個不以英文字母,數(shù)值為邊界的字符串
\b找尋一個以英文字母,數(shù)值為邊界的字符串
a|b|c找到符合a字符或是b字符或是c字符的字符串
abc找到一個含有abc的字符串
(pattern)()這個符號是會記憶所找尋到的字符,是一個很實用的語法
第一個()內(nèi)所找到的字符串變成$1這個變量或是\1變量
第二個()內(nèi)所找到的字符串變成$2這個變量或是\2變量
以此類推,筆者會在下一小節(jié)中詳細(xì)介紹它的用法

/pattern/ii這個參數(shù)是代表忽略英文大小寫的意思,也就是在找尋字符串的時候,不會去考慮英文的大小寫
\如果要在pattern模式中找尋一個有特殊的意義的字符,要在這個字符前加上\這個符號,這樣才會讓這個特殊字符失效#p#

二、Perl 字符匹配的文字處理模式(regularexpression)的簡單范例

看了上一小節(jié)文字處理模(regularexpression)之的,初學(xué)者對于這個語法的應(yīng)用可能還不是很清楚,所以筆者會在這一小節(jié)中,舉出一些在文字處理模式中常用的范例給大家看看:

范例說明
/perl/找到含有perl的字符串
/^perl/找到開頭是perl的字符串
/perl$/找到結(jié)尾是perl的字符串
/c|g|i/找到含有c或g或i的字符串
/cg{2,4}i/找到c后面跟著2個到4個g,再跟著i的字符串
/cg{2,}i/找到c后面跟著2個以上g,再跟著i的字符串
/cg{2}i/找到c后面跟著2個g,再跟著i的字符串
/cg*i/找到c后面跟著0個或多個g,再跟著i的字符串,如同/cg{0,1}i/
/cg+i/找到c后面跟著一個以上g,再跟著c的字符串,如同/cg{1,}i/

/cg?i/找到c后面跟著0個或是一個g,再跟著c的字符串,如同/cg{0,1}i/
/c.i/找到c后面跟著一個任意字符,再跟著i的字符串
/c..i/找到c后面跟著二個任意字符,再跟著i的字符串
/[cgi]/找到符合有這三個字符任意一個的字符串
/[^cgi]/找到?jīng)]有這三個字符中任意一個的字符串
/\d/找尋符合數(shù)值的字符串
可以使用/\d+/來表示一個或是多個數(shù)值的字符串
/\d/找尋符合不是數(shù)值的字符串
可以使用/\d+/來表示一個或是更多個非數(shù)值的字符串

/\w/找尋符合英文字母,數(shù)值的字符串
可以使用/\w+/來表示一個或是更多個英文字母,數(shù)值的字符串
/\w/找尋符合非英文字母,數(shù)值字符的字符串
可以使用/\w+/來表示一個或是更多個非英文字母,數(shù)值的字符串
/\s/找尋符合空白的字符串
可以使用/\s+/來表示一個或是更多個空白字符的字符串
/\s/找尋符合不是空白的字符串
可以使用/\s+/來表示一個或是更多不是空白的字符的字符串
/\*/找尋符合*這個符號的字符串,因為*在文字處理模式中有它的特殊意思,所以要在這個特殊符號前加上\這個符號,這樣才會讓這個特殊字符失效
/abc/i找尋符合abc的字符串而且不考慮這些符合字符串的大小寫

【編輯推薦】

  1. Perl 字符匹配實例解說
  2. Perl文件句柄概念詳解
  3. Perl二維數(shù)組用法全程剖析
  4. 暢談Perl操作符用法
  5. Perl開發(fā)工具大比拼
責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-07-21 13:35:22

Perl模式匹配

2010-07-16 08:47:53

Perl if語句

2010-07-20 09:45:04

Perl繼承

2010-07-15 15:54:10

Perl守護進程

2010-07-14 15:32:21

Perl轉(zhuǎn)義字符

2010-07-14 12:39:30

Prel字符串

2010-07-21 13:27:06

Perl模式匹配

2010-07-23 13:46:27

Perl語言

2010-07-19 15:07:46

Perl字符串處理函數(shù)

2010-07-14 16:21:48

Perl

2010-07-19 10:01:57

Perl函數(shù)

2010-07-23 15:59:33

Perl encode

2010-07-13 13:49:43

Perl foreac

2010-07-13 09:34:24

Perl純變量

2010-07-21 13:59:59

Perl引用

2010-07-15 17:58:31

Perl模式

2010-07-26 10:51:26

Perl模式匹配

2010-07-26 11:02:19

Perl模式匹配

2009-09-23 15:37:52

Hibernate 原

2010-07-20 15:02:20

Perl數(shù)組
點贊
收藏

51CTO技術(shù)棧公眾號