日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

初步了解并使用正则表达式 (REGular EXPression)

發(fā)布時(shí)間:2024/4/15 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 初步了解并使用正则表达式 (REGular EXPression) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? 正則表達(dá)式(REGular EXPression),正則表達(dá)式使用單個(gè)字符串來(lái)描述、匹配一系列符合某個(gè)句法規(guī)則的字符串。在很多文本編輯器里,正則表達(dá)式通常被用來(lái)檢索、替換那些符合某個(gè)模式的文本。只有掌握了正則表達(dá)式,才能全面地掌握 Linux 下的常用文本工具(例如:grep、egrep、GUN sed、 Awk 等) 的用法。

? 正則表達(dá)式可以分為基本正則表達(dá)式 (Basic REGEXP) 、擴(kuò)展正則表達(dá)式 (EXtended REGEXP)和Perl 正則表達(dá)式(Perl Regular Expression 又叫 Perl RegEx 簡(jiǎn)稱 PREs)?三種。目前,我們只使用前兩種正則表達(dá)式來(lái)完成日常的linux下的命令操作。

? Linux中,基本正則表達(dá)式和擴(kuò)展正則表達(dá)式都有相同的匹配分類:1、字符匹配;2、次數(shù)匹配;3、位置錨定;4、分組錨定。擴(kuò)展正則表達(dá)式還支持【或者錨定】。

正則表達(dá)式:REGular, EXPression, REGEXP

元字符:

.:匹配任意單個(gè)字符

[]:匹配指定范圍內(nèi)的任意單個(gè)字符

[^]:匹配指定范圍外的任意單個(gè)字符

字符集合:[:digit:] [:lower:] [:upper:] [:punct:] [:space:] [:alpha:] [:alnum:]

匹配次數(shù)(工作在貪婪模式下,盡可能長(zhǎng)的去匹配):

*:匹配其前面的字符任意次,包括0次

.*:任意長(zhǎng)度的任意字符


?:匹配其前面的字符1次或0次

\{m,n\}:匹配其前面的字符,至少m次,至多n次


位置錨定:

^:錨定必須出現(xiàn)的行首,此字符串后邊的任意內(nèi)容必須出現(xiàn)在行首(放在詞前)

$:錨定行尾,此字符串前邊的任意內(nèi)容必須出現(xiàn)在行尾(放在詞尾)

^$:空白行


\<或\b:其后邊的字符必須作為單詞首部出現(xiàn)

\>或\b:其前邊的字符必須作為單詞尾部出現(xiàn)


分組:

\(\)

\(ab\)*:ab可以出現(xiàn)任意次

后向引用

\1:第一個(gè)左括號(hào)以及與之對(duì)應(yīng)的右括號(hào)所包括的所有內(nèi)容

\2:

\3:

或者:只用于擴(kuò)展正則表達(dá)式

a|b:匹配 a或者b, a or b

C|cat:匹配 C或者cat

grep:使用基本正則表達(dá)式定義的模式來(lái)過(guò)濾文本的命令: ?使用格式為:grep ?command ?FILE

-i:不區(qū)分大小寫

-v:反向查找,顯示沒(méi)有被模式匹配到的行

-o:只顯示被匹配到的字符串

--color:將匹配結(jié)果用高亮顏色顯示出來(lái)

-E:使用擴(kuò)展正則表達(dá)式

-A #:當(dāng)某一行被指定后,顯示其后#行

-B #:當(dāng)某一行被指定后,顯示其前#行

-C #:當(dāng)某一行被指定后,顯示其前,后#行

?

?

正則表達(dá)式不僅僅在我們查看文本中匹配內(nèi)容時(shí)用到,它常常用于shell腳本的編程及其他文本編輯器中替換指定的字符串為我們需要的字符串,這些就需要sed等其他的命令來(lái)進(jìn)行,正則表達(dá)式可以提高我們的腳本編程速度。

轉(zhuǎn)載于:https://blog.51cto.com/earljoyce/1148602

總結(jié)

以上是生活随笔為你收集整理的初步了解并使用正则表达式 (REGular EXPression)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。