我一直在嘗試識別網頁的網址格式。對於我跟着以下,但已經結束了一個問題PHP的正則表達式來識別特定的網址格式
- 使用> PHP正則表達式:
~((https?://)?([-\w]+\.[-\w\.]+)+\w(:\d+)?(/([-\w/_\.]*(\?\S+)?)?)*)~i
這已經確定了幾乎所有類型的URL像下面
example.com
www.example.com
http://example.com
http://www.example.com
https://example.com
https://www.example.com
但不幸的是它也考慮十進制值,價格值,電話號碼,IP地址作爲URL格式(可能我以前沒有考慮過它們)。因此,要解決這個問題我已經使用以下來找到特定的數字值的模式要被排除
/^[0-9]+(\.[0-9]{1,})+\S+\w?$/
使用這已通過排除像
Deciaml值(1.11)
數值固定的URL標識符IP地址(123.123.123.123)
價格值($ 11.11)
現在到了新問題「的縮寫,也考慮ED作爲網址」
W.H.O(在任何情況下,按字母順序排列)
所以,我怎麼能有一個URL識別PHP正則表達式將不包括上述問題的情況?
或
我能有一個PHP的正則表達式來識別涉及像上面的例子縮寫字母單值?
感謝
你不應該發佈鏈接到僞造的URL。這是代碼,所以你必須格式化它(這是工具欄按鈕): –
請原諒我的錯別字:) –
嘗試[''〜\ b(?![AZ](?:\。[AZ]) (?:\ \ d +)| + \ b \ d +?+ \ S + \ b)(?(HTTPS://)([ - \ W] + \ [ - \ W] +)+ \ W( ?:: \ d +)(/([ - \ W/_。] *(:???\ \ S +))?)*)\ b〜''](https://regex101.com/r/ iuozYk/2) –