Heim > Backend-Entwicklung > PHP-Tutorial > 一句正则不懂

一句正则不懂

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-06 20:48:05
Original
1219 Leute haben es durchsucht

<code>preg_match_all("#(^|\s|\()((http(s?)://)|(www\.))(\w+[^\s\)\</code>
Nach dem Login kopieren
Nach dem Login kopieren

这个正则中的|\s|()代表什么意思?有人知道吗

回复内容:

<code>preg_match_all("#(^|\s|\()((http(s?)://)|(www\.))(\w+[^\s\)\</code>
Nach dem Login kopieren
Nach dem Login kopieren

这个正则中的|\s|()代表什么意思?有人知道吗

我把每一部分都解释给题主吧。

#(^|\s|\()((http(s?)://)|(www\.))(\w+[^\s\)\<]+)#i
Nach dem Login kopieren

两边的 # 是 PCRE 分隔符,最后一个 i 表示忽略大小写。

(^|\s|\()
Nach dem Login kopieren

字符串开头,或者有空格分隔,或者匹配一个左括号。这个部分是一个未命名分组。

((http(s?)://)|(www\.))
Nach dem Login kopieren

匹配 http:// 或者 https:// 或者 www. 。这个部分是一个未命名分组,其中又分成两个未命名分组。

(\w+[^\s\)\<]+)
Nach dem Login kopieren

匹配至少一个字母数字,之后再匹配至少一个不是空格、右括号、左尖括号的字符。这里又是一个未命名分组。

结束。

推荐两个debug正则的站点:

  • debuggex 界面凑合,功能强大,支持多种语言的正则
  • regexper 比较好看,只支持javascript的正则
Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage