国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

PHP快速入門09-正則相關(guān),附一定要學(xué)會的20個(gè)高頻使用案例

這篇具有很好參考價(jià)值的文章主要介紹了PHP快速入門09-正則相關(guān),附一定要學(xué)會的20個(gè)高頻使用案例。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


前言

本文已收錄于PHP全棧系列專欄:PHP快速入門與實(shí)戰(zhàn)

PHP快速入門09-正則相關(guān),附一定要學(xué)會的20個(gè)高頻使用案例

一、正則表達(dá)式介紹

正則表達(dá)式(Regular Expression)是一種字符序列,用于描述一組字符串匹配某個(gè)模式或格式。

它由一些特殊的字符和普通字符組成,可以表示一些特定的文本模式,如手機(jī)號碼、郵箱、網(wǎng)址等等。正則表達(dá)式在很多程序設(shè)計(jì)語言中都得到了廣泛應(yīng)用,如Python、Java、C++等等。合理的使用正則表達(dá)式往往會使我們的效率事半功倍。

常用的正則表達(dá)式元字符包括:

  • ^:表示匹配字符的開頭。
  • $:表示匹配字符的結(jié)尾。
  • *:表示匹配前面的字符出現(xiàn)任意次數(shù)。
  • +:表示匹配前面的字符出現(xiàn)至少一次。
  • ?:表示匹配前面的字符出現(xiàn)零次或一次。
  • .:表示匹配任意一個(gè)字符。
  • []:表示匹配方括號內(nèi)的某個(gè)字符。
  • ():表示將其中的表達(dá)式作為一個(gè)整體來匹配。

例如,使用正則表達(dá)式“\d{11}”可以匹配11位的數(shù)字串,即手機(jī)號碼。

正則表達(dá)式雖然非常強(qiáng)大,但也有其缺點(diǎn),即復(fù)雜度較高,難以閱讀和維護(hù),因此需要慎重使用。

二、正則高頻案例20個(gè)

在編程中,正則表達(dá)式經(jīng)常被用來處理文本數(shù)據(jù),如驗(yàn)證用戶輸入、搜索字符串、替換文本等。

以下是使用 PHP 編寫的 20 個(gè)正則表達(dá)式示例:

2.1 檢查字符串是否以字母開頭

if (preg_match('/^[a-zA-Z]/', $string)) {
    echo "First character is a letter";
} else {
    echo "First character is not a letter";
}

2.2 檢查字符串是否以數(shù)字開頭

if (preg_match('/^[0-9]/', $string)) {
    echo "First character is a number";
} else {
    echo "First character is not a number";
}

2.3 檢查字符串是否包含特定字符

if (preg_match('/[aeiou]/', $string)) {
    echo "String contains a vowel";
} else {
    echo "String does not contain a vowel";
}

2.4 檢查字符串是否以特定字符結(jié)尾

if (preg_match('/[.]$/', $string)) {
    echo "String ends with a period";
} else {
    echo "String does not end with a period";
}

2.5 檢查字符串是否為純數(shù)字

if (preg_match('/^[0-9]+$/', $string)) {
    echo "String is all digits";
} else {
    echo "String is not all digits";
}

2.6 檢查字符串是否為純字母

if (preg_match('/^[a-zA-Z]+$/', $string)) {
    echo "String is all letters";
} else {
    echo "String is not all letters";
}

2.7 檢查字符串是否為有效的電子郵件地址

if (preg_match('/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/', $string)) {
    echo "String is a valid email";
} else {
    echo "String is not a valid email";
}

2.8 檢查字符串是否為有效的 URL

if (preg_match('/^(http|https):\/\/[a-z0-9\-]+\.[a-z0-9\-]+(\/[a-z0-9\-._~:?#\[\]@!$&\'()*+,;=%]*)?$/i', $string)) {
    echo "String is a valid URL";
} else {
    echo "String is not a valid URL";
}

2.9 檢查字符串是否為有效的 IP 地址

if (preg_match('/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/', $string)) {
    echo "String is a valid IP address";
} else {
    echo "String is not a valid IP address";
}

2.10 檢查字符串是否為有效的日期格式

if (preg_match('/^\d{4}-\d{2}-\d{2}$/', $string)) {
    echo "String is a valid date";
} else {
    echo "String is not a valid date";
}

2.11 檢查字符串是否為有效的時(shí)間格式

if (preg_match('/^(0?[1-9]|1[0-2]):[0-5][0-9] (am|pm)$/i', $string)) {
    echo "String is a valid time";
} else {
    echo "String is not a valid time";
}

2.12 檢查字符串是否為有效的電話號碼

if (preg_match('/^\+?\d{1,3}?[- .]?\(?\d{3}\)?[- .]?\d{3}[- .]?\d{4}$/', $string)) {
    echo "String is a valid phone number";
} else {
    echo "String is not a valid phone number";
}

2.13 檢查字符串是否包含至少一個(gè)字母和一個(gè)數(shù)字

if (preg_match('/(?=.*[a-zA-Z])(?=.*[0-9])/', $string)) {
    echo "String contains at least one letter and one number";
} else {
    echo "String does not contain at least one letter and one number";
}

2.14 檢查字符串是否為有效的郵政編碼

if (preg_match('/^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$/', $string)) {
    echo "String is a valid postal code";
} else {
    echo "String is not a valid postal code";
}

2.15 檢查字符串是否為有效的貨幣格式

if (preg_match('/^\$?\d+(\.\d{1,2})?$/', $string)) {
    echo "String is a valid currency";
} else {
    echo "String is not a valid currency";
}

2.16 檢查字符串是否包含至少一個(gè)大寫字母和一個(gè)小寫字母

if (preg_match('/(?=.*[a-z])(?=.*[A-Z])/', $string)) {
    echo "String contains at least one lower case letter and one upper case letter";
} else {
    echo "String does not contain at least one lower case letter and one upper case letter";
}

2.17 檢查字符串是否為有效的車牌號碼

if (preg_match('/^(京|津|滬|渝|冀|豫|云|遼|黑|湘|皖|魯|新|蘇|浙|贛|鄂|桂|甘|晉|蒙|陜|吉|閩|貴|粵|青|藏|川|寧|瓊)([A-HJ-NP-Z])([A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9掛學(xué)警港澳]{1})$/', $string)) {
    echo "String is a valid license plate number";
} else {
    echo "String is not a valid license plate number";
}

2.18 檢查字符串是否為有效的身份證號碼

if (preg_match('/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])\d{3}[0-9xX]$/', $string)) {
    echo "String is a valid ID card number";
} else {
    echo "String is not a valid ID card number";
}

2.19 檢查字符串是否包含至少一個(gè)非字母和數(shù)字字符

if (preg_match('/\W/', $string)) {
    echo "String contains at least one non-letter and non-number character";
} else {
    echo "String does not contain at least one non-letter and non-number character";
}

2.20 檢查字符串是否為有效的 HTML 標(biāo)簽

if (preg_match('/^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/', $string)) {
    echo "String is a valid HTML tag";
} else {
    echo "String is not a valid HTML tag";
}

總結(jié)

以上就是關(guān)于本篇文章介紹的內(nèi)容,正則相關(guān),附一定要學(xué)會的20個(gè)高頻使用案例,后續(xù)更多內(nèi)容將收錄在專欄PHP快速入門與實(shí)戰(zhàn)中,感謝大家支持。文章來源地址http://www.zghlxwxcb.cn/news/detail-416221.html

到了這里,關(guān)于PHP快速入門09-正則相關(guān),附一定要學(xué)會的20個(gè)高頻使用案例的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • OpenCV入門(十四)快速學(xué)會OpenCV 13 邊緣檢測

    OpenCV入門(十四)快速學(xué)會OpenCV 13 邊緣檢測

    作者:Xiou 邊緣檢測是圖像處理和計(jì)算機(jī)視覺中的基本問題,邊緣檢測的目的是標(biāo)識數(shù)字圖像中亮度變化明顯的點(diǎn)。圖像屬性中的顯著變化通常反映了屬性的重要事件和變化,包括深度不連續(xù)、表面方向不連續(xù)、物質(zhì)屬性變化和場景照明變化。邊緣檢測特征是提取中的一個(gè)研

    2024年02月04日
    瀏覽(33)
  • OpenCV入門(二十八)快速學(xué)會OpenCV 27 圖像匹配

    OpenCV入門(二十八)快速學(xué)會OpenCV 27 圖像匹配

    作者:Xiou 如果說SIFT還很年輕,SURF更年輕,那么ORB就還處于嬰兒期。ORB首次發(fā)布于2011年,作為SIFT和SURF的一個(gè)快速代替品。該算法發(fā)表在論文“ORB:an efficient alternative to SIFT or SURF”上,可以在 http://www.willowgarage.com/sites/default/files/orb_final.pdf 處找到PDF格式的論文。ORB融合了FAS

    2023年04月09日
    瀏覽(32)
  • 5.2 Mybatis快速入門,輕松學(xué)會常用12種注解開發(fā)

    5.2 Mybatis快速入門,輕松學(xué)會常用12種注解開發(fā)

    通過 《上文》,我們完成了 SpringBoot整合Mybatis ,那么接下來,我們就來使用Mybatis訪問MySQL數(shù)據(jù)庫! MyBatis的強(qiáng)大在于它的語句映射,它提供了 注解和XML映射 兩種方式,都是為了減少我們的使用成本,屏蔽JDBC代碼細(xì)節(jié),節(jié)省代碼,從而讓我們更專注于SQL代碼!本文主要使用

    2023年04月25日
    瀏覽(24)
  • 軟件測試面試,一定要準(zhǔn)備的7個(gè)高頻面試題(附答案,建議收藏)

    軟件測試面試,一定要準(zhǔn)備的7個(gè)高頻面試題(附答案,建議收藏)

    問題1:請自我介紹下? 核?要素: 個(gè)?技能優(yōu)勢+?作背景+經(jīng)驗(yàn)亮點(diǎn) 參考回答: 第一種:基本信息+離職理由 ?試官您好,我叫張三,來?番茄市,在軟件測試?業(yè)有 3 年的?作經(jīng)驗(yàn)。做過 Web/APP及?程序項(xiàng)?的測試?作,有獨(dú)?負(fù)責(zé)整個(gè)項(xiàng)?的測試經(jīng)驗(yàn)。 由于個(gè)?原因從

    2024年02月06日
    瀏覽(25)
  • AI繪畫 | 一文學(xué)會Midjourney繪畫,創(chuàng)作自己的AI作品(快速入門+參數(shù)介紹)

    AI繪畫 | 一文學(xué)會Midjourney繪畫,創(chuàng)作自己的AI作品(快速入門+參數(shù)介紹)

    首先,生成將中文描述詞翻譯成英文 然后在輸入端輸入: /imagine prompt:Bravely running boy in Q version, cute head portrait 最后,稍等一會即可輸出效果 說明: 下面的U1、U2、U3、U4代表的第一張、第二張、第三張、第四張圖片。點(diǎn)擊可以生成對應(yīng)圖片的單個(gè)圖。如下圖所示。 V1、V2、V

    2024年02月12日
    瀏覽(26)
  • Web3.0 的特點(diǎn)及你一定要學(xué)會的應(yīng)用

    Web3.0 的特點(diǎn)及你一定要學(xué)會的應(yīng)用

    什么是Web3.0 Web 3.0是一個(gè)讀、寫和擁有的時(shí)代,區(qū)別于Web1.0和Web2.0,用戶創(chuàng)造的數(shù)字內(nèi)容,所有權(quán)歸用戶所有,不依賴中心化平臺。 Web 3.0的一個(gè)重要核心,即去中心化,Web3.0是以區(qū)塊鏈為底層技術(shù)支撐的互聯(lián)網(wǎng)演變方向,我們統(tǒng)稱為價(jià)值互聯(lián)網(wǎng)。 ? 簡單的說價(jià)值互聯(lián)網(wǎng)就是

    2024年02月20日
    瀏覽(16)
  • 怎么視頻摳圖?一鍵AI智能摳圖,這招你一定要學(xué)會

    怎么視頻摳圖?一鍵AI智能摳圖,這招你一定要學(xué)會

    在日常的生活中我們都喜歡通過視頻的方式來記錄生活中的美好時(shí)刻;但是在拍攝的過程中,可能會背景雜亂的情況,想要?jiǎng)h掉卻又覺得有點(diǎn)可惜,那有沒有什么辦法可以解決這個(gè)問題呢? 其實(shí)大家在生活中經(jīng)常會遇見這些問題,自己出去拍攝的視頻或者是保存的視頻素材都

    2024年02月02日
    瀏覽(26)
  • JavaScript從入門到精通系列第三十一篇:詳解JavaScript中的字符串和正則表達(dá)式相關(guān)的方法

    JavaScript從入門到精通系列第三十一篇:詳解JavaScript中的字符串和正則表達(dá)式相關(guān)的方法

    ? 文章目錄 知識回顧 1:概念回顧 2:正則表達(dá)式字面量 一:字符串中正則表達(dá)式方法 1:split 2:search 3:match 4:replace ????????正則表達(dá)式用于定義一些字符串的規(guī)則,計(jì)算機(jī)可以根據(jù)正則表達(dá)式檢查一個(gè)字符串是否符合規(guī)則,或者將字符串中符合規(guī)則的內(nèi)容提取出來。

    2024年01月17日
    瀏覽(35)
  • 電腦正常登錄QQ微信,但瀏覽器無法打開網(wǎng)頁,這個(gè)你一定要學(xué)會!

    電腦正常登錄QQ微信,但瀏覽器無法打開網(wǎng)頁,這個(gè)你一定要學(xué)會!

    電腦能正常登錄微信/QQ,但是瀏覽器無法打開網(wǎng)頁的情況時(shí)有發(fā)生。掌握這三個(gè)方法,就能輕松解決問題! 首先 按Win+R , 輸入CMD , 回車 輸入ping?baidu.com , 回車 ▲ 網(wǎng)絡(luò)正常情況有回復(fù) 有【來自xxx的回復(fù):字節(jié)=xx……】就說明網(wǎng)絡(luò)是正常的 ▲?網(wǎng)絡(luò)異常情況 如果不通,就

    2024年02月04日
    瀏覽(302)
  • 【Java從0到1學(xué)習(xí)】09 正則表達(dá)式

    【Java從0到1學(xué)習(xí)】09 正則表達(dá)式

    在編寫處理字符串的程序或網(wǎng)頁時(shí),經(jīng)常會有查找符合某些復(fù)雜規(guī)則的字符串的需要。正則表達(dá)式就是用于描述這些規(guī)則的工具。換句話說,正則表達(dá)式就是記錄文本規(guī)則的代碼。 正則表達(dá)式,又稱正規(guī)表示法、常規(guī)表示法(英語:Regular Expression,在代碼中常簡寫為regex、

    2024年02月11日
    瀏覽(41)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包