C#網路應用編程基礎練習題與答案(七)

來源:互聯網
上載者:User
編程|網路

  1. 解釋Regex <a\s+href\s*=\s*""?([^"" >]+)""?>(.+)</a>各部分代表的含義。

  【解答】 此Regex用於匹配源檔案中類似於搜狐新聞的字串,各部分表示的含義為:

  \s+ 一個或多個空白字元

  href 後接 HTML 錨點中的確切文本

  \s* 零個或多個空白字元

  = 後接 HTML 錨點中的確切文本

  \s* 零個或多個空白字元

  ""? 零或無引號(轉義的)

  ( 定義子字串(錨點 URL)的組的起始點。

  [^"" >]+ 任一字元的一個或多個匹配項,括弧中的字元除外。

  ) 定義子字串的第一組的結束

  ""? 零或無引號(轉義的)

  > 後接 HTML 錨點中的確切文本

  (.+) 與任一字元(錨點文本)匹配的組。

  結束 HTML 錨點的確切文本

  2. 下面是檢查輸入字串是否為有效電子郵件的Regex:

  ^([\w-]+\.)*?[\w-]+@[\w-]+\.([\w-]+\.)*?[\w]+$

  試解釋各部分的含義。

  【解答】

  [\w-]+

  一個或多個任一字元(a-z、A-Z、0-9 以及底線)或短劃線。在@字元兩邊,確保地址形式為name@domainname。

  \.

  一個轉義點號。(不帶反斜線,一個點號與除分行符號外的任意單個字元匹配。)以此確保網域名稱中至少有一個點號。

  *?

  對前面的運算式,非貪婪(non-greedy,即最小)地尋找零次或多次匹配。

  ([\w-]+\.)*?

  以上三個運算式的組合:

  對於包含一個或多個任一字元(a-z、A-Z、0-9 以及底線)或短劃線並且後面只跟一個點號的運算式,非貪婪地尋找零次或多次匹配。

  3. 寫出符合下列要求的Regex:

  1) 要求4-8個英文字母。

  2) 不能包含字母,至少1個字元。

  3) 至少3個數字。

  4) 至少3個字元。

  5) 至少3個英文字母。

  6) 任一字元。

  7) 3個字母或數字,如123,r3a等。

  8) 3個點。

  9) @前至少有1個字元,@後至少有3個字元。

  10) 必須輸入左括弧。

  【解答】

  1) [a-zA-Z]{4,8}

  2) [^a-zA-Z]{1,}

  3) [0-9]{3,}

  4) {3,}

  5) [a-zA-Z]{3,}

  6) .{0,}

  7) [A-Za-z0-9]{3}

  8) \.{3}

  9) .{1,}@ .{3,}

  10) \(



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。