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

编程|网络

  1. 解释正则表达式 <a\s+href\s*=\s*""?([^"" >]+)""?>(.+)</a>各部分代表的含义。

  【解答】 此正则表达式用于匹配源文件中类似于搜狐新闻的字符串,各部分表示的含义为:

  \s+ 一个或多个空白字符

  href 后接 HTML 定位点中的确切文本

  \s* 零个或多个空白字符

  = 后接 HTML 定位点中的确切文本

  \s* 零个或多个空白字符

  ""? 零或无引号(转义的)

  ( 定义子字符串(定位点 URL)的组的起始点。

  [^"" >]+ 任意字符的一个或多个匹配项,括号中的字符除外。

  ) 定义子字符串的第一组的结束

  ""? 零或无引号(转义的)

  > 后接 HTML 定位点中的确切文本

  (.+) 与任意字符(定位点文本)匹配的组。

  结束 HTML 定位点的确切文本

  2. 下面是检查输入字符串是否为有效的电子邮件的正则表达式:

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

  试解释各部分的含义。

  【解答】

  [\w-]+

  一个或多个任意字符(a-z、A-Z、0-9 以及下划线)或短划线。在@字符两边,确保地址形式为name@domainname。

  \.

  一个转义点号。(不带反斜杠,一个点号与除换行符外的任意单个字符匹配。)以此确保域名中至少有一个点号。

  *?

  对前面的表达式,非贪婪(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) \(

时间: 2024-12-09 08:06:30

C#网络应用编程基础练习题与答案(七)的相关文章

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

编程|网络 1. C/S结构模式与B/S结构模式的主要区别是什么? [解答] 首先,在系统的性能方面.只要拥有可上网的浏览器,就可以使用B/S系统.不过,B/S结构的客户端只能完成浏览.查询.数据输入等简单功能,绝大部分工作要由服务器承担,这就对服务器提出了很高的要求,无形中增加了用户在这一方面的投入.采用C/S结构时,客户端和服务器都承担部分工作,有效利用了客户端和服务器端的资源,使用户不必在硬件上有更多的投入.另外,浏览器页面不便于修改,这为用户定制自己的文件时带来了不便,比如用户想自定义一

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

编程|网络 1. C#支持的数据类型有那些?与C++相比有哪些特点? [解答] C#支持的数据类型有: (1) 值类型 包括:简单类型.结构类型.枚举类型.其中,简单类型又分为:整型.布尔型.字符型.浮点型.小数型. (2) 引用类型 包括:对象类型.类类型.接口.元数据.字符串类型.数组. 与C++相比,C#的主要特点有: 1) C#语言自C/C++演变而来.但是,它是完全按照面向对象的思想来设计的,并保证了类型的安全性. 2) C#简化了C++在类.名称空间.方法重载和异常处理等方面的使用.

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

编程|网络 1. 编写一个控制台应用程序,完成下列功能. 1) 创建一个类,用无参数的构造函数输出该类的类名. 2) 增加一个重载的构造函数,带有一个string类型的参数,在此构造函数中将传递的字符串打印出来. 3) 在Main方法中创建属于这个类的一个对象,不传递参数. 4) 在Main方法中创建属于这个类的另一个对象,传递一个字符串"This is a string.". 5) 在Main方法中声明类型为这个类的一个具有5个对象的数组,但不要实际创建分配到数组里的对象. 6) 写

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

编程|网络 1. 与结构化编程方法相比,面向对象编程有哪些优点? [解答] (1) 以过程为中心和对象为中心的比较 结构化编程方法是以过程为中心的,当面对一个问题时,该方法侧重于问题解决过程的层次结构.面向对象的分析和设计方法侧重于对象.对象具有特定的行为和属性,行为和属性决定了对象与其他对象的交互作用方式,以及对象本身的行为方式. (2) 公开数据和隐藏数据的比较 结构化编程方法对数据和过程仅仅进行简单的包装,这些数据和过程是公开的,或者说程序中的其他代码可以访问这些数据和过程.面向对象的实现

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

编程|网络 1. 填空题 1) 使控件是否可以对用户交互作出响应的属性是 Enabled . 2) 控制控件是否显示的属性是 Visible . 3) 若要在文本框中输入密码,常指定 PasswordChar 属性. 4) 若某复选框某时刻CheckState属性的值为Indeterminate,则其属性Checked的值为 Unchecked . 5) 使用 Panel 或 GroupBox 控件可以将多个RadioButton控件分为两个单选组. 6) 若不希望用户在ComboBox控件中编

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

编程|网络 1. 简要回答文件和流之间的区别和联系. [解答] 文件(file)和流(stream)即有区别又有联系.文件是在各种媒质上(可移动磁盘.硬盘.CD 等)永久存储的数据的有序集合.它是一种进行数据读写操作的基本对象.通常情况下,文件按照树状目录进行组织,每个文件都有文件名.文件所在路径.创建时间.访问权限等属性. 流是字节序列的抽象概念,例如文件.输入输出设备.内部进程通信管道或者TCP/IP套接字等均可以看成流.流提供一种向后备存储器写入字节和从后备存储器读取字节的方式. 2. D

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

编程|网络 1. 使用保持连接的方式编写程序,计算各年级平均成绩,并显示结果. [解答] using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace 习

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

编程|网络 1. 简述三类二维坐标系统之间的相同点和区别. [解答] GDI+中的二维笛卡儿坐标系统分为三类:全局坐标系统.页面坐标系统和设备坐标系统. 三类坐标系统的相同点:它们都有坐标原点以及向右和向下的x轴和y轴. 三类坐标系统的区别:全局坐标系统可以进行旋转.平移等操作.页面坐标系统与设备坐标系统都是以设备的左上角为坐标原点,X水平向右为正,Y垂直向下为正.页面坐标系统与设备坐标系统的差异在于X,Y的单位不同:页面坐标系中的X,Y单位可以任意设定,如英寸.毫米等;而设备坐标系中,只有一种

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

编程|网络 1. 组件与控件的主要区别是什么? [解答] 组件是指可重复使用并且可以和其他对象进行交互的对象.组件(component)是靠类实现的.控件是能够提供用户界面接口(UI)功能的组件.换句话说就是,控件是具有用户界面功能的组件. 所有控件肯定都是组件,但并不是每个组件都一定是控件. 2. 控件有几种类型?各有什么特点? [解答] 控件分为:复合.扩展和自定义三类. 复合控件是封装在公共容器内的Windows窗体控件的集合.这种控件有时称为"用户控件",包含的控件称为&quo