首页 > 开发 > 综合 > 正文

C#网络应用编程基础练习题与答案(七)

2024-07-21 02:28:21
字体:
来源:转载
供稿:网友

  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) /(


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表