簡體   English   中英

RegEx 僅匹配 URL 的第一部分並將其用作變量

[英]RegEx Match only first part of URL and use this as variable

一直在與 RegEx 斗爭,非常感謝幫助。 我想將 URL 的部分內容與正則表達式匹配,但無法理解它。

域是:

https://名稱.secondpart.thirdpart.com

我希望我的正則表達式匹配

名稱我將如何實現這一目標?

(?<=^|\.)(?<=^|\.)secondpart\.thirdpart\.com$ ,但沒有成功。

請注意,假設您使用斜杠作為正則表達式定界符,我使用前導反斜杠對斜杠進行了轉義。 如果您不使用或使用不同的分隔符(例如#),您可以只使用/而不是\/


如果你只關心第一部分,那么

^[^.:\/]+:\/\/([^.]+)

應該做的伎倆。

https://regex101.com/r/CXXOOD/1


如果您之后還需要強制執行特定域,則將其捕獲到這樣的組中

^[^.:\/]+:\/\/([^.]+)\.secondpart\.thirdpart\.com$

https://regex101.com/r/gjfYhC/1


如果您想確保在子域部分之后恰好有 3 個部分,但不關心它們是什么:

^[^.:\/]+:\/\/([^.]+)(?:\.[^.]+){3}$

https://regex101.com/r/lUYBkT/1

當你標記 pcre 時,你可以使用:

^https?://\K[^\s./]+

解釋

  • ^字符串開始
  • https?://匹配帶有可選s的協議
  • \K忘記到目前為止匹配的內容
  • [^\s./]+匹配 1+ 次非空白字符,除了. /

請參閱正則表達式演示

你可以使用它,

(?:http[s]*\:\/\/)*(.*?)\.(?=[^\/]*\..{2,5})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM