日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

正则表达式的含义php,求正则表达式含义

發布時間:2025/3/20 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 正则表达式的含义php,求正则表达式含义 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

preg_match('~^(ftp|news|http|https)?://(.*)$~D', $url, $matches)

疑問

1.正則表達式一般寫法 '/正則/'

這個為什么這樣寫?

2.此正則啥意思?

回復討論(解決方案)

~沒有遇到過,應該和/差不多吧,就是定界符的意思。

^(ftp|news|http|https)?://(.*)$

^字符串開始處開始匹配

(ftp|news|http|https)? 匹配ftp或者news或者http或者https,含有零次或者1次

:// 匹配://

(.*) 匹配任意字符任意次數

$字符串結束

最后的大寫字母D:

D (PCRE_DOLLAR_ENDONLY) 如果設定了此修正符,模式中的美元元字符僅匹配目標字符串的結尾。

默認的規則串定界符是 /

但你也可以指定其他字符為定界符,以減少特使字符的轉義

D 模式用的極少,自己理解吧

D(PCRE_DOLLAR_ENDONLY)

如果設定了此修正符,模式中的美元元字符僅匹配目標字符串的結尾。沒有此選項時,如果最后一個字符是換行符的話,美元符號也會匹配此字符之前(但不會匹配任何其它換行符之前)。如果設定了 m 修正符則忽略此選項。Perl 中沒有與其等價的修正符。

這個正則應該是分析一個url列表用到的

列表格式大概是每行一個url并且以換行結尾

如果不使用D只能找到到第一個匹配那行

默認的規則串定界符是 /

但你也可以指定其他字符為定界符,以減少特使字符的轉義

D 模式用的極少,自己理解吧

D(PCRE_DOLLAR_ENDONLY)

如果設定了此修正符,模式中的美元元字符僅匹配目標字符串的結尾。沒有此選項時,如果最后一個字符是換行符的話,美元符號也會匹配此字符之前(但不會匹配任何其它換行符之前)。如果設定了 m 修正符則忽略此選項。Perl 中沒有與其等價的修正符。

默認的規則串定界符是 /

但你也可以指定其他字符為定界符,以減少特使字符的轉義

受教~

http://blog.csdn.net/tigerdsh/article/details/8866456 看了這個你就明白了,詳細的解釋

首先樓主應該理解preg_match(),它是一種是基于perl語言,使用“preg_”為前綴命名的函數。在這里,其實就是用$url替換$matches里符合~^(ftp|news|http|https)?://(.*)$~D這一個正則的字符串。

~是一個定界符,默認的是/,當然也可以自己定義,前后對應就可以了。

^是開頭,$是結尾,|是或,?是出現0次到1次,*是出現1次到多次,.是匹配除 \n 以外的任何字符。D是不匹配任何 0 到 9 之間的單個數字,相當于 [^0-9]。

可以看我的博客:http://blog.csdn.net/wf120355/article/details/8753593

本文原創發布php中文網,轉載請注明出處,感謝您的尊重!

總結

以上是生活随笔為你收集整理的正则表达式的含义php,求正则表达式含义的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。