1. 解釋正則表達式 <a/s+href/s*=/s*""?([^"" >]+)""?>(.+)</a>各部分代表的含義。
【解答】 此正則表達式用于匹配源文件中類似于搜狐新聞的字符串,各部分表示的含義為:
/s+ 一個或多個空白字符
href 后接 html 定位點中的確切文本
/s* 零個或多個空白字符
= 后接 html 定位點中的確切文本
/s* 零個或多個空白字符
""? 零或無引號(轉義的)
( 定義子字符串(定位點 url)的組的起始點。
[^"" >]+ 任意字符的一個或多個匹配項,括號中的字符除外。
) 定義子字符串的第一組的結束
""? 零或無引號(轉義的)
> 后接 html 定位點中的確切文本
(.+) 與任意字符(定位點文本)匹配的組。
結束 html 定位點的確切文本
2. 下面是檢查輸入字符串是否為有效的電子郵件的正則表達式:
^([/w-]+/.)*?[/w-][email protected][/w-]+/.([/w-]+/.)*?[/w]+$
試解釋各部分的含義。
【解答】
[/w-]+
一個或多個任意字符(a-z、a-z、0-9 以及下劃線)或短劃線。在@字符兩邊,確保地址形式為[email protected]。
/.
一個轉義點號。(不帶反斜杠,一個點號與除換行符外的任意單個字符匹配。)以此確保域名中至少有一個點號。
*?
對前面的表達式,非貪婪(non-greedy,即最小)地查找零次或多次匹配。
([/w-]+/.)*?
以上三個表達式的組合:
對于包含一個或多個任意字符(a-z、a-z、0-9 以及下劃線)或短劃線并且后面只跟一個點號的表達式,非貪婪地查找零次或多次匹配。
3. 寫出符合下列要求的正則表達式:
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) /(
新聞熱點
疑難解答