2015-09-04 18 views
-2

驗證碼我已經在PHP中搜索了以下網站驗證碼的解釋/含義,但沒有得到它。 任何線索?網站的含義使用(!preg_match)

(!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) 
+1

可能的重複[參考 - 這是什麼正則表達式?](http://stackoverflow.com/questions/22937618/reference-what-does-this-regex-mean) – nhahtdh

+1

這個問題目前的形式還不清楚如果澄清,它很可能會過於寬泛。你真正應該做的是讀一個RegEx引用,就像@nhahtdh提到的引用。但是,我認爲這個問題不應該作爲這個問題的重複來解決,應該以太寬泛的方式來結束,因爲在任何澄清的形式中,我都可以想象它對於這種格式仍然過於寬泛。 –

回答

0

如果你google谷歌preg_match你會發現a php method執行正則表達式匹配的引用。

您的代碼檢查$網站是否匹配「」之間的模式,如果不匹配,則返回true。 這是一個條件,它檢查模式中給定的正則表達式的匹配。

的的preg_match可以稱爲:

preg_match (string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]]) 

在你的情況$pattern"/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i"$subject /輸入字符串爲$website。這似乎是檢查https和ftp。

您可以輸入您的模式字符串in a website like this one,並將鼠標懸停在每個元素上以瞭解其含義。

+0

謝謝.....但我在使用'/ \'和'\/\ /'和[-a-z0-9 +&@#\//%?=〜_ |!:,。 ] * [ - a-z0-9 +&@#\ /%=〜_ |]/i「 – ArjunKasi

+0

該模式由正斜槓/模式分隔符包圍,接下來是用於匹配開始的單詞邊界\ b在這種情況下,下一個括號()用來定義操作符的範圍和優先級。?:用於非捕獲組(?:pattern),因此它不僅僅是/ \它是/ ... ./和\ b。不僅如此,你只需要學習正則表達式來理解這一切。我提供的網站應該只驗證輸入。祝你好運:http://regexone.com/ –