C語言的正則表達(dá)式規(guī)則,特此跟大家分享。
一、C語言如何使用正則表達(dá)式?
C語言使用正則表達(dá)式的方法很簡單,只需要包含正則表達(dá)式頭文件即可:
#include
相關(guān)函數(shù):
regcomp():編譯正則表達(dá)式
regexec():進(jìn)行模式匹配
regfree():當(dāng)不再需要編譯的正則表達(dá)式時(shí)要將其釋放
使用時(shí)依次調(diào)用這些函數(shù)即可。其中特別需要提出是regexec()函數(shù)的最后一個(gè)參數(shù),有如下四種選擇:
REG_EXTENDED以功能更加強(qiáng)大的擴(kuò)展正則表達(dá)式的方式進(jìn)行匹配;
REG_ICASE匹配字母時(shí)忽略大小寫;
REG_NOSUB不用存儲(chǔ)匹配后的結(jié)果;
REG_NEWLINE識(shí)別換行符號。
一般,我們選擇第一個(gè)功能更強(qiáng)大的擴(kuò)展表達(dá)式即可。

下面是一個(gè)封裝這些函數(shù)的例子(供參考):
二、正則表達(dá)式規(guī)則
1. 單字符匹配

舉例:
字符串:Hi, 2016!
表達(dá)式:\w\w\W\s\S\d.\D
注意:因?yàn)镃語言解析字符串時(shí)也會(huì)區(qū)分轉(zhuǎn)義字符'',所以我們的正則表達(dá)式需要在每個(gè)轉(zhuǎn)移字符前再加一個(gè)''才可以,像"\w"
2.字符數(shù)量匹配

舉例:
字符串:Hi, 20160422!
表達(dá)式:\w{2},\s2?0+1*\d{1,5}!
3.字符位置匹配

舉例:
字符串:Hi, 20160422!
表達(dá)式:^Hi,\s\d{8}!$
4.選擇匹配

舉例:
字符串:www.123123123e5rt6yDF.com
表達(dá)式:\w{3}\.(123){3}[5-6e-y]{6}[^5-6e-y]{2}\s(com|COM)$
三、最后
本文只介紹了正則表達(dá)式的一部分匹配規(guī)則,大多是常用的,還有些更高級的用法等以后用到了再更新。另外,文中匹配時(shí)舉的例子都是為了便于理解而舉的,實(shí)際使用時(shí)可以更精簡。
另外的話,作為一名程序員,如果你想更好的提升你的編程能力,好好學(xué)習(xí)C/C++編程知識(shí),以后努力成為高薪軟件開發(fā)工程師的話!
分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門教程)
歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!
原文標(biāo)題:二、正則表達(dá)式規(guī)則
文章出處:【微信公眾號:C語言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅
-
參數(shù)
+關(guān)注
關(guān)注
11文章
1869瀏覽量
33945 -
C語言
+關(guān)注
關(guān)注
183文章
7644瀏覽量
145574 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4417瀏覽量
67501
原文標(biāo)題:二、正則表達(dá)式規(guī)則
文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
什么是正則表達(dá)式?正則表達(dá)式如何工作?哪些語法規(guī)則適用正則表達(dá)式?
shell正則表達(dá)式學(xué)習(xí)
正則表達(dá)式匹配器
深入淺出boost正則表達(dá)式
關(guān)于java正則表達(dá)式的用法詳解
快速入門IPv6和正則表達(dá)式
Python正則表達(dá)式的學(xué)習(xí)指南
Python正則表達(dá)式指南
初識(shí) Python 正則表達(dá)式
python正則表達(dá)式中的常用函數(shù)
Linux入門之正則表達(dá)式
shell腳本基礎(chǔ):正則表達(dá)式grep
C語言如何使用正則表達(dá)式
評論