RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語言如何使用正則表達(dá)式

C語言編程學(xué)習(xí)基地 ? 來源:C語言編程學(xué)習(xí)基地 ? 作者:C語言編程學(xué)習(xí)基地 ? 2022-03-16 08:41 ? 次閱讀

C語言的正則表達(dá)式規(guī)則,特此跟大家分享。

一、C語言如何使用正則表達(dá)式?

C語言使用正則表達(dá)式的方法很簡單,只需要包含正則表達(dá)式頭文件即可:

#include

相關(guān)函數(shù):

regcomp():編譯正則表達(dá)式

regexec():進(jìn)行模式匹配

regfree():當(dāng)不再需要編譯的正則表達(dá)式時要將其釋放

使用時依次調(diào)用這些函數(shù)即可。其中特別需要提出是regexec()函數(shù)的最后一個參數(shù),有如下四種選擇:

REG_EXTENDED以功能更加強大的擴展正則表達(dá)式的方式進(jìn)行匹配;

REG_ICASE匹配字母時忽略大小寫;

REG_NOSUB不用存儲匹配后的結(jié)果;

REG_NEWLINE識別換行符號。

一般,我們選擇第一個功能更強大的擴展表達(dá)式即可。

f10eb11e-8eb8-11ec-952b-dac502259ad0.png

下面是一個封裝這些函數(shù)的例子(供參考):

二、正則表達(dá)式規(guī)則

1. 單字符匹配

f12dd152-8eb8-11ec-952b-dac502259ad0.png

舉例:

字符串:Hi, 2016!

表達(dá)式:\w\w\W\s\S\d.\D

注意:因為C語言解析字符串時也會區(qū)分轉(zhuǎn)義字符'',所以我們的正則表達(dá)式需要在每個轉(zhuǎn)移字符前再加一個''才可以,像"\w"

2.字符數(shù)量匹配

f1417b58-8eb8-11ec-952b-dac502259ad0.png

舉例:

字符串:Hi, 20160422!

表達(dá)式:\w{2},\s2?0+1*\d{1,5}!

3.字符位置匹配

f1559192-8eb8-11ec-952b-dac502259ad0.png

舉例:

字符串:Hi, 20160422!

表達(dá)式:^Hi,\s\d{8}!$

4.選擇匹配

f16bc750-8eb8-11ec-952b-dac502259ad0.png

舉例:

字符串:www.123123123e5rt6yDF.com

表達(dá)式:\w{3}\.(123){3}[5-6e-y]{6}[^5-6e-y]{2}\s(com|COM)$

三、最后

本文只介紹了正則表達(dá)式的一部分匹配規(guī)則,大多是常用的,還有些更高級的用法等以后用到了再更新。另外,文中匹配時舉的例子都是為了便于理解而舉的,實際使用時可以更精簡。

另外的話,作為一名程序員,如果你想更好的提升你的編程能力,好好學(xué)習(xí)C/C++編程知識,以后努力成為高薪軟件開發(fā)工程師的話!

分享(源碼、項目實戰(zhàn)視頻、項目筆記,基礎(chǔ)入門教程

歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!

原文標(biāo)題:二、正則表達(dá)式規(guī)則

文章出處:【微信公眾號:C語言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 參數(shù)
    +關(guān)注

    關(guān)注

    11

    文章

    1829

    瀏覽量

    32195
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7604

    瀏覽量

    136686
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4327

    瀏覽量

    62569

原文標(biāo)題:二、正則表達(dá)式規(guī)則

文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    什么是正則表達(dá)式?正則表達(dá)式如何工作?哪些語法規(guī)則適用正則表達(dá)式?

    實現(xiàn)自動化文本處理。在許多編程語言中,正則表達(dá)式都被廣泛用于文本處理、數(shù)據(jù)分析、網(wǎng)頁抓取等領(lǐng)域。通過正則表達(dá)式,我們可以精確地篩選、操作和格式化文本,提高工作效率。
    的頭像 發(fā)表于 11-03 14:41 ?3536次閱讀
    什么是<b class='flag-5'>正則表達(dá)式</b>?<b class='flag-5'>正則表達(dá)式</b>如何工作?哪些語法規(guī)則適用<b class='flag-5'>正則表達(dá)式</b>?

    shell正則表達(dá)式學(xué)習(xí)

    程序設(shè)計語言都支持利用正則表達(dá)式進(jìn)行字符串操作。例如,在Perl中就內(nèi)建了一個功能強大的正則表達(dá)式引擎。正則表達(dá)式在檢索或替換上遠(yuǎn)比之前用到的通配符要強大的多,用在批處理上絕對好用,比
    發(fā)表于 07-25 17:18

    初識 Python 正則表達(dá)式

    風(fēng)格的正則表達(dá)式模式。re 模塊使 Python 語言擁有全部的正則表達(dá)式功能。下面通過實例,一步一步來初步認(rèn)識正則表達(dá)式。比如在一段字符串中尋找是否含有某個字符或某些字符,通常我們
    發(fā)表于 03-17 16:44

    正則表達(dá)式匹配器

    正則表達(dá)式是描述文本模式的表示法,它可以有效地構(gòu)造一種用于模式匹配的專用語言。雖然正則表達(dá)式可以有多種不同的形式,但它們都有著共同的特點:模式中的大多數(shù)字符都
    發(fā)表于 10-29 13:21 ?0次下載

    深入淺出boost正則表達(dá)式

    什么是正則表達(dá)式正則表達(dá)式是一種用來描述一定數(shù)量文本的模式。Regex代表Regular Express. 如果您不知道什么是正則表達(dá)式,請看這篇文章:深入淺出之正則表達(dá)式
    發(fā)表于 09-08 18:09 ?9次下載

    精通正則表達(dá)式

    詳細(xì)的快速正則表達(dá)式的查詢電子書,簡單而豐富
    發(fā)表于 05-16 18:04 ?5次下載

    關(guān)于java正則表達(dá)式的用法詳解

    正則表達(dá)式 一個正則表達(dá)式是一個用于文本搜索的文本模式。換句話說,在文本中搜索出現(xiàn)的模式。例如,你可以用正則表達(dá)式搜索網(wǎng)頁中的郵箱地址或超鏈接。 正則表達(dá)式示例 下面是一個簡單的Jav
    發(fā)表于 09-27 14:24 ?0次下載

    快速入門IPv6和正則表達(dá)式

    對于日常開發(fā)中只接觸IPv4,并沒有深入研究過正則表達(dá)式的開發(fā)者,面對IPv6和正則表達(dá)式,容易產(chǎn)生畏懼心理,覺得是兩座難以翻越的大山。本文通過一些表格整理對IPv6的表示方法,以及正則表達(dá)式的特殊符號進(jìn)行了分類和說明,帶領(lǐng)大家
    的頭像 發(fā)表于 03-30 09:31 ?8997次閱讀
    快速入門IPv6和<b class='flag-5'>正則表達(dá)式</b>

    Python正則表達(dá)式的學(xué)習(xí)指南

    本文介紹了Python對于正則表達(dá)式的支持,包括正則表達(dá)式基礎(chǔ)以及Python正則表達(dá)式標(biāo)準(zhǔn)庫的完整介紹及使用示例。本文的內(nèi)容不包括如何編寫高效的正則表達(dá)式、如何優(yōu)化
    發(fā)表于 09-15 08:00 ?0次下載
    Python<b class='flag-5'>正則表達(dá)式</b>的學(xué)習(xí)指南

    Python正則表達(dá)式指南

    本文介紹了Python對于正則表達(dá)式的支持,包括正則表達(dá)式基礎(chǔ)以及Python正則表達(dá)式標(biāo)準(zhǔn)庫的完整介紹及使用示例。本文的內(nèi)容不包括如何編寫高效的正則表達(dá)式、如何優(yōu)化
    發(fā)表于 03-26 09:13 ?10次下載
    Python<b class='flag-5'>正則表達(dá)式</b>指南

    初識 Python 正則表達(dá)式

    風(fēng)格的正則表達(dá)式模式。re 模塊使 Python 語言擁有全部的正則表達(dá)式功能。 下面通過實例,一步一步來初步認(rèn)識正則表達(dá)式。 比如在一段字符串中尋找是否含有某個字符或某些字符,通常
    的頭像 發(fā)表于 03-17 16:44 ?1419次閱讀

    python正則表達(dá)式中的常用函數(shù)

    編譯正則表達(dá)式模式,返回一個正則對象的模式。(可以把那些常用的正則表達(dá)式編譯成正則表達(dá)式對象,這樣可以提高一點效率。)
    的頭像 發(fā)表于 03-18 16:12 ?1791次閱讀

    Linux入門之正則表達(dá)式

    正則表達(dá)式是用來表達(dá)字符串匹配模式的方法,利用正則表達(dá)式,可以讓我們輕易地實現(xiàn)對目標(biāo)字符串的**查找**、**刪除**、**替換**等操作。 正則表達(dá)式并不復(fù)雜,它并不包含難以理
    的頭像 發(fā)表于 05-12 15:31 ?873次閱讀
    Linux入門之<b class='flag-5'>正則表達(dá)式</b>

    shell腳本基礎(chǔ):正則表達(dá)式grep

    在Linux上有許多命令可以使用正則表達(dá)式,其中最常見的是grep命令和sed命令。正則表達(dá)式有多種類型,每種類型中可以使用的元字符類型不同。最常見的是基本正則表達(dá)式和擴展正則表達(dá)式
    的頭像 發(fā)表于 05-29 09:29 ?1251次閱讀
    shell腳本基礎(chǔ):<b class='flag-5'>正則表達(dá)式</b>grep

    Python中的正則表達(dá)式

    哈嘍大家好,我是了不起,今天給大家講Python中的正則表達(dá)式 在Python中,正則表達(dá)式是一種強大的文本處理工具,它可以用來匹配、搜索、替換文本。正則表達(dá)式是一個特殊的字符序列,它可以描述一類
    的頭像 發(fā)表于 06-21 16:52 ?983次閱讀
    RM新时代网站-首页