文档库 最新最全的文档下载
当前位置:文档库 › solaris 技术指南 附录A 正则表达式

solaris 技术指南 附录A 正则表达式

附录A 正则表达式

一个正则表达式定义了一个或多个字符串的集合。许多命令(包括v i、e m a c s、g r e p、n a w k和s e d)都使用正则表达式来使查找和替换字符串变得更容易。一个简单的字符串就是一个定义了它自己本身这个字符串的正则表达式。更为复杂的正则表达式使用字母、数字和特殊字符来定义许多不同类型的字符串。一个正则表达式与它自己定义的任何字符串都相匹配。

本附录介绍了在e d、v i、e m a c s、g r e p、n a w k、s e d和其他命令中所使用的正则表达式。s h e l l中在模糊文件引用中使用的正则表达式在某些程度上有一些不同,在第5章中曾经介绍过。

A.1 字符

与附录中使用的一样,一个字符就是除N E W L I N E以外的任何字符。在正则表达式中大多数字符表示它们自身的含义,而一个特殊字符则是不表示自身含义的字符。如果用户一定要使用特殊字符代表它们自身的含义,则必须将它引用。请参考A .4.5节。

A.2 分隔符

通常用来表明正则表达式的起点处和结束处的字符叫做分隔符( d e l i m i t e r)。分隔符经常是它所分隔正则表达式的一个特殊字符(也就是说,它不代表自身的含义,却用来表明表达式的起点处和结束处)。尽管如此,v i允许其他字符用做分隔符,并且g r e p根本就不使用分隔符,在这个附录中的正则表达式使用前斜杠(/)来作为分隔符。在一些含义清晰的情况下,不需要第二个分隔符。例如,如果第二个分隔符后面要跟随一个R E T U R N,有时也可以省略该分隔符。

A.3 简单字符串

大多数基本的正则表达式是不包含分隔符以外的特殊字符的简单字符串。一个简单字符串只与它自己本身相匹配。

在下面的例子中,字符串与附表A -1的内容相匹配。

附表A-1 简单字符串

正则表达式匹配示例

/ r i n g/r i n g r i n g, s p r i n g,r i n g i n g,s t r i n g i n g

/ T h u r s d a y/T h u r s d a y T h u r s d a y, T h u r s d a y' s

/or not/or not or not, p o or no t h i n g

A.4 特殊字符

用户可以在正则表达式使用特殊字符,以让该正则表达式与一个以上的字符串相匹配。

A.4.1 句点

一个句点(.)与任何一个字符都匹配,见附表A -2。

附表A-2 句点的匹配

正则表达式匹配示例

/ .alk/S PA C E后面是任何一个字符,并且该字符的后面will t a l k, may b a l k

是a l k的所有字符串

/ .i n g/i n g前面是任何一个字符的所有字符串s i n g ing, p i n g, before i n g l e n o o k

A.4.2 方括号

方括号([ ])定义了匹配括号中任何一个字符的字符集。如果左方括号后的第一个字符是补字号(^),则该方括号定义了匹配任何不在方括号内字符的字符集。用户可以使用连字号来确定字符的一个范围。在一个字符集的定义中,反斜杠和星号(在下面的章节中进行描述)失去了它们的特殊意义。右方括号(以字符类的一个成员出现)只可以作为左方括号后的第一个字符出现。一个补字号(^)只有在左方括号后的第一个字符出现时才有特殊意义。见附表A -3。

附表A-3 方括号匹配

正则表达式匹配示例

/ [b B]i l l/后面有i l l的b和B的字符类成员 b i l l, B i l l, b i l l e d

/ t[a e i o u].k/t后面跟一个元音字母,接着是任何一个字符和一个k t a l k ative, s t i n k, t e a k,t a n k e r

/number [6-9]/n u m b e r后面跟一个S PA C E和6到9的字符类中的一个成员number 60, number 8,get number 9 / [^a-z A-Z]/任何一个非字母字符1, 7, @, ., }, Stop!

A.4.3 星号

星号可以跟在代表单个字符的正则表达式的后面。星号表示所匹配的正则表达式的零次或多次出现。句点后面的一个星号可以与任何字符的字符串相匹配(句点与任何一个字符都匹配,并且星号与它前面的正则表达式的零次或多次出现相匹配)。字符类定义后面跟一个星号能够匹配任何作为字符类成员的字符串。

包含特殊字符的正则表达式通常可以匹配从该行的开始处(即左边)尽可能长的字符串。见附表A -4。

附表A-4 星号匹配

正则表达式匹配示例

/ a b*c/a后面有零个或多个b,然后后面是c a c, a b c, a b b c, debbcaa b b b c

/ a b.*c/ a b后面有零个或多个字符,然后后面是c a b c, a b x c, a b45c, xab 756.345 x cat

/ t.*i n g/t后面有零个或多个字符,然后后面是i n g t h i n g, t i n g, I thought of going

[ a-z A-Z]*/只由字母和S PA C E组成的字符串 1. any string without numbers or punctuation!

/ (.*)/在(和)之间尽可能长的字符串Get (this) and (that);

/ ([^]*)/以(开始、)结束尽可能短的字符串(t h i s), Get (this and that)

A.4.4 脱字号和美元符号

以脱字号(^)开头的正则表达式只能在行的开头处匹配一个字符串。在类似的方式下,正则表达式末尾的美元符号匹配行的末尾。见附表A -5。

附表A-5 脱字号和美元符号匹配

正则表达式匹配示例

/ ^T/行的开头是T This line...,

That Ti m e...,

In Ti m e / ^+[0-9]/行的开头是加号,紧接着后面是一个数字+5 +45.72,

+759 Keep this...

/ :$/行的末尾是冒号. ..b e l o w:

A.4.5 引起特殊字符

用户可以在任何特殊字符(但不是数字或圆括号)的前面加上反斜杠来“引起”它。“引起”一个字符就可以让它代表它自己本身。见附表A -6。

附表A-6 “引起”特殊字符

正则表达式匹配示例

/ e n d\./ e n d后面跟一个句点的所有字符串The e n d., se n d. ,

p r e t e n d. m a i l / \\/单个反斜杠\

/ \*/一个星号*.c, an asterisk( *)

/ \[5\]/[ 5]it was five[5]

/ a n d\/o r/ a n d/o r a n d/o r

A.5 规则

下面的规则决定了正则表达式的应用。

A.5.1 尽可能长地匹配

就像前面所阐述的那样,正则表达式通常从该行的开始处(即左边)尽可能长地匹配字符

串。例如,给定以下的字符串:

表达式/ T h.*i s/将字符串进行匹配的结果是:

同时/ (.*)/将字符串进行匹配的结果是:

但是,/ ([^])*)/的匹配结果是:

给定以下的字符串:

表达式/ s.*i n g/的匹配结果是:

同时,/s.*ing song/的匹配结果是:

A.5.2 空正则表达式

在有些实用程序(比如v i和l e s s,而不是g r e p)中,一个空正则表达式代表用户最近使用最为频繁的正则表达式。例如,在v i编辑器中输入以下替换命令:

并且在这以后如果用户希望再进行同样的替换操作,可以使用以下命令:

当然,用户也可以使用以下命令对字符串m i k e进行查找操作,然后再进行替换:

这个空正则表达式(/ /)代表用户最近使用最为频繁的正则表达式(/ m i k e/)。

A.6 括号表达式

用户可以通过引用括号“\ (”和“\ )”来对正则表达式进行括号操作。与括号里面的正则表达式相匹配的字符串可以连续使用,这在后面的“引用数字”中有阐述。正则表达式不会试图去匹配引用的括号,因此引用括号内的正则表达式与没有括号的正则表达式所匹配的字符串是一样的。表达式/\ (rexp\)/与/ r e x p所匹配的内容是一样的,/ a\(b*\)c/与/ a b*c/所匹配的内容是一样的。

用户也可以嵌套使用引用括号。括号表达式只能由开启括号“\ (”来表示,所以可以很明确地标识它们。表达式/ \([a-z]\([A-Z]*\)x\)/由两个嵌套的括号表达式组成。在字符串 3 t dMNORx7 l u中,前面表达式的匹配结果是 d M N O R x,第一个括号表达式的匹配结果是d M N O R x,第二个括号表达式的匹配结果是M N O R x。

A.7 替换字符串

v i和s e d编辑器在替换命令中使用正则表达式来搜索字符串。用户可以在相应的替换字符串中使用“与”字号(&)和引用数字(\ n)特殊字符来代表要匹配的字符串。

A.7.1 “与”字号

在替换表达式中,一个“与”字号(&)表示要匹配的查找字符串(正则表达式)的字符串的值。例如,在下面的v i替换命令中包含一个或多个N N的数字字符串,替换字符串中的“与”字号匹配正则表达式(查找字符串)所匹配的任何数字字符串。

在这里定义两个字符串是必须的,因为正则表达式[ 0-9]*匹配零个或多个数字以及由零个或多个数字组成的任何字符串。

A.7.2 引用数字

在查找字符串中,一个引用的正则表达式(\ x x x\)与没有引用的正则表达式所匹配的结果是一样的。

在替换字符串中,一个引用数字(\ n)代表以第n个\ (开始的括号正则表达式(查找字符串的一部分)所匹配的结果。

例如,用户可以以这种形式来得到一个人物列表

并且将它放在下面的格式中:

采用以下的v i命令:

该命令将访问文件(1 ,$)中的所有行,替换命令(s)使用由前斜杠分隔开来的查找字符串和替换字符串。查找字符串中的第一个括号正则表达式\ ([^,]*\)与相同的非括号正则表达式[ ^,]*的匹配结果是一样的,该正则表达式的匹配结果是不包含逗号、由零个或多个字符组成的字符串(l a s t-n a m e)。第一个括号正则表达式后边的逗号和一个S P A C E与它们自身相匹配。第二个括号正则表达式\ (.*\)的匹配结果是任何字符串(f i r s t-n a m e和i n i t i a l)。

替换字符串由第二个括号正则表达式与(\ 2)的匹配结果,然后是一个S P A C E和第一个括号正则表达式与(\ 1)的匹配结果组成。

A.8 扩展正则表达式

e g r e p实用程序、以- E选项运行的g r e p和n a w k同其他应用程序一样提供包括普通正则表达式(但是不包括“\ (”和“\ )”)在内的所有特殊字符。利用特殊字符扩展集的模式叫全正则表达式或扩展正则表达式。

剩下的两个特殊字符是加号(+)和问号(?),它们与匹配零个或多个前一个字符的*号相

类似。加号与一个或多个的前一个字符相匹配,而问号匹配零个或1个这样的字符。用户可以用括号来一同使用这三个特殊的字符*、+和?,以使特殊字符用于在括号里面的字符串中。与括号正则表达式的括号不一样的是,这些括号是不可以引用的。见附表A -7。

附表A-7 加号与问号的匹配

正则表达式匹配示例

/ a b+c/a的后面是一个或多个b,紧接着是一个c y a b c w, a b b c5 7

/ a b?c/a后面是零个或一个b,紧接着是c b a c k, a b c d e f

/ (a b)+c/一个或多个字符串a b,紧接着是c z a b cd, a b a b c!

/ (a b)?c/零个或一个字符串a b,紧接着是c xc, a b c c

在完全的正则表达式中竖杠(|)是“或”操作符。两个正则表达式之间的竖杠的匹配结果将是:第一个表达式或第二个表达式、或者两个表达式的匹配结果。用户也可以在括号中使用竖杠来将两个表达式“或”操作以后的剩下的正则表达式分离出来。见附表A -8。

附表A-8 竖杠的匹配

正则表达式匹配示例

/ a b|a c/或者是a b,或者是a c a b, a c, a b a c

/ ^E x i t|^Q u i t/以E x i t或Q u i t开始的行 E x i t,

Q u i t,

No Exit / (D|N)\.J o n e s/ D. Jones或N. Jones P. D. Jones, N. Jones

A.9 小结

正则表达式定义了一个或多个字符串的集合。正则表达式与它所定义的任何字符串相匹配。附表A -9中的字符是正则表达式中的特殊字符。

附表A-9 特殊字符列表

特殊字符功能

.匹配任何单个字符

*匹配零个或多个前面的一个字符

^在一个行的开始进行匹配

$在一个行的末尾进行匹配

\引用一个特殊字符

\ <在一个单词的开始处进行匹配

\ >在一个单词的末尾处进行匹配

附表A -10中的字符串是与字符类和括号正则表达式相匹配的正则表达式的特殊形式。

除了以上的特殊字符和字符串(不包括引用括号)以外,附表A -11是扩展正则表达式中的特殊字符。

附表A-10 正则表达式的特殊形式

正则表达式功能

[ x y z]定义一个匹配x、y或z的字符集

[ ^x y z]定义一个匹配除x、y或z以外字符的字符集

[ x-z]定义一个匹配从x到z字符(包括它们两个)的字符集

\ (x y z\)匹配x y z所匹配的字符串(一个括号正则表达式)

附表A -11 扩展正则表达式的特殊字符

特殊字符/正则表达式匹配结果

+一个或多个前面的字符

?零个或一个前面的字符

( x y z)+一个或多个x y z

( x y z)?零个或一个x y z

( x y z)*零个或多个x y z

x y z/a b c要么是x y z,要么是a b c

( x y/a b)c要么是x y c,要么是a b c

参考前面讲述的v i中的正则表达式,附表A -12是v i和s e d替换字符串中的特殊字符。

附表A-12 vi和s e d中的特殊字符

字符功能

&代表正则表达式(搜索字符串)所匹配的字符串

\ n一个引用数字,n表示搜索字符串中的第n个括号正则表达式

正则表达式

正则表达式 一、什么是这则表达式 正则表达式(regular expressions)是一种描述字符串集的方法,它是以字符串集中各字符串的共有特征为依据的。正则表达式可以用于搜索、编辑或者是操作文本和数据。它超出了java程序设计语言的标准语法,因此有必要去学习特定的语法来构建正则表达式。一般使用的java.util.regex API所支持的正则表达式语法。 二、测试用具 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Regex{ public static void main(String[]args)throws Exception{ BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); if(br==null){ System.out.println("没有输入任何数据"); System.exit(1); } while(true){ System.out.print("输入表达式:"); Pattern pattern=https://www.wendangku.net/doc/6a14962514.html,pile(br.readLine()); System.out.print("输入字符串:"); Matcher matcher=pattern.matcher(br.readLine()); boolean found=false; while(matcher.find()){ System.out.println("找到子字符串"+matcher.group()+" 开始于索引"+matcher.start()+"结束于索引"+matcher.end()+"\n") found=true; } if(!found){ System.out.println("没有找到子字符串\n"); } } } }

正则表达式教程

正则表达式 学习要点: 1.什么是正则表达式 2.创建正则表达式 3.获取控制 4.常用的正则 假设用户需要在HTML 表单中填写姓名、地址、出生日期等。那么在将表单提交到服 务器进一步处理前,JavaScript 程序会检查表单以确认用户确实输入了信息并且这些信息是 符合要求的。 一.什么是正则表达式 正则表达式(regular expression)是一个描述字符模式的对象。ECMAScript 的RegExp 类 表示正则表达式,而String 和RegExp 都定义了使用正则表达式进行强大的模式匹配和文本 检索与替换的函数。 正则表达式主要用来验证客户端的输入数据。用户填写完表单单击按钮之后,表单就会 被发送到服务器,在服务器端通常会用PHP、https://www.wendangku.net/doc/6a14962514.html, 等服务器脚本对其进行进一步处理。 因为客户端验证,可以节约大量的服务器端的系统资源,并且提供更

好的用户体验。 二.创建正则表达式 创建正则表达式和创建字符串类似,创建正则表达式提供了两种方法,一种是采用new 运算符,另一个是采用字面量方式。 1.两种创建方式 var box = new RegExp('box'); //第一个参数字符串 var box = new RegExp('box', 'ig'); //第二个参数可选模式修饰符 模式修饰符的可选参数 参数含义 i 忽略大小写 g 全局匹配 m 多行匹配 var box = /box/; //直接用两个反斜杠 var box = /box/ig; //在第二个斜杠后面加上模式修饰符 2.测试正则表达式 RegExp 对象包含两个方法:test()和exec(),功能基本相似,用于测试字符串匹配。test() 方法在字符串中查找是否存在指定的正则表达式并返回布尔值,如果存在则返回true,不存 在则返回false。exec()方法也用于在字符串中查找指定正则表达式,如果exec()方法执行成

sweethome3D v3-7用户手册

... 3D eTeks Sweet Home 3D 3D 3D Sweet Home 3D https://www.wendangku.net/doc/6a14962514.html,/ , Sweet Home 3D version 3.7 https://www.wendangku.net/doc/6a14962514.html,/examples/userGuideExample.sh3d (3.2 MB). Sweet Home 3D Windows, Mac OS X 10.4 / 10.8 Linux Solaris 23 Sweet Home 3D Sweet Home 3D 1. Sweet Home 3D

. Sweet Home 3D: Sweet Home 3D 2 Sweet Home 3D 2. Sweet Home 3D Windows: https://www.wendangku.net/doc/6a14962514.html,/projects/sweethome3d/files/SweetHome3D/SweetHome3D-3.7/SweetHome3D-3.7-windows-oc.exe/download (32.7 MB) Mac OS X: https://www.wendangku.net/doc/6a14962514.html,/projects/sweethome3d/files/SweetHome3D/SweetHome3D-3.7/SweetHome3D-3.7-macosx.dmg/download (16.2 MB) Sweet Home 3D Sweet Home 3D Linux: https://www.wendangku.net/doc/6a14962514.html,/projects/sweethome3d/files/SweetHome3D/SweetHome3D-3.7/SweetHome3D-3.7-linux-x86.tgz/download (52.8 MB) SweetHome3D 1 3 2 4 2 Tab Shift + Tab

正则表达式经典手册

引言 正则表达式(regular expression)就是用一个“表达式”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。比如表达式“ab+” 描述的特征是“一个 'a' 和任意个'b' ”,那么 'ab', 'abb', 'abbbbbbbbbb' 都符合这个特征。 正则表达式可以用来:(1)验证字符串是否符合指定特征,比如验证是否是合法的邮件地址。(2)用来查找字符串,从一个长的文本中查找符合指定特征的字符串,比查找固定字符串更加灵活方便。(3)用来替换,比普通的替换更强大。 正则表达式学习起来其实是很简单的,不多的几个较为抽象的概念也很容易理解。之所以很多人感觉正则表达式比较复杂,一方面是因为大多数的文档没有做到由浅入深地讲解,概念上没有注意先后顺序,给读者的理解带来困难;另一方面,各种引擎自带的文档一般都要介绍它特有的功能,然而这部分特有的功能并不是我们首先要理解的。 文章中的每一个举例,都可以点击进入到测试页面进行测试。闲话少说,开始。 1. 正则表达式规则 1.1 普通字符 字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号,都是"普通字符"。表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符。 举例1:表达式 "c",在匹配字符串 "abcde" 时,匹配结果是:成功;匹配到的内容是:"c";匹配到的位置是:开始于2,结束于3。(注:下标从0开始还是从1开始,因当前编程语言的不同而可能不同) 举例2:表达式 "bcd",在匹配字符串 "abcde" 时,匹配结果是:成功;匹配到的内容是:"bcd";匹配到的位置是:开始于1,结束于4。 1.2 简单的转义字符 一些不便书写的字符,采用在前面加 "\" 的方法。这些字符其实我们都已经熟知了。

正则表达式语法完整版

正则表达式基础知识 一个正则表达式就是由普通字符(例如字符a 到z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。如:

下面看几个例子: "^The":表示所有以"The"开始的字符串("There","The cat"等); "of despair$":表示所以以"of despair"结尾的字符串; "^abc$":表示开始和结尾都是"abc"的字符串——呵呵,只有"abc"自己了;"notice":表示任何包含"notice"的字符串。 '*','+'和'?'这三个符号,表示一个或一序列字符重复出现的次数。它们分别表示“没有或更多”,“一次或更多”还有“没有或一次”。下面是几个例子: "ab*":表示一个字符串有一个a后面跟着零个或若干个b。("a", "ab", "abbb",……);"ab+":表示一个字符串有一个a后面跟着至少一个b或者更多; "ab?":表示一个字符串有一个a后面跟着零个或者一个b; "a?b+$":表示在字符串的末尾有零个或一个a跟着一个或几个b。 也可以使用范围,用大括号括起,用以表示重复次数的范围。 "ab{2}":表示一个字符串有一个a跟着2个b("abb"); "ab{2,}":表示一个字符串有一个a跟着至少2个b; "ab{3,5}":表示一个字符串有一个a跟着3到5个b。

请注意,你必须指定范围的下限(如:"{0,2}"而不是"{,2}")。 还有,你可能注意到了,'*','+'和'?'相当于"{0,}","{1,}"和"{0,1}"。 还有一个'|',表示“或”操作: "hi|hello":表示一个字符串里有"hi"或者"hello"; "(b|cd)ef":表示"bef"或"cdef"; "(a|b)*c":表示一串"a""b"混合的字符串后面跟一个"c"; '.'可以替代任何字符: "a.[0-9]":表示一个字符串有一个"a"后面跟着一个任意字符和一个数字; "^.{3}$":表示有任意三个字符的字符串(长度为3个字符); 方括号表示某些字符允许在一个字符串中的某一特定位置出现: "[ab]":表示一个字符串有一个"a"或"b"(相当于"a|b"); "[a-d]":表示一个字符串包含小写的'a'到'd'中的一个(相当于"a|b|c|d"或者"[abcd]");"^[a-zA-Z]":表示一个以字母开头的字符串; "[0-9]%":表示一个百分号前有一位的数字; "[0-9]+":表示一个以上的数字; ",[a-zA-Z0-9]$":表示一个字符串以一个逗号后面跟着一个字母或数字结束。 你也可以在方括号里用'^'表示不希望出现的字符,'^'应在方括号里的第一位。(如:"%[^a-zA-Z]%"表 示两个百分号中不应该出现字母)。 为了逐字表达,必须在"^.$()|*+?{\"这些字符前加上转移字符'\'。 请注意在方括号中,不需要转义字符。

经典Sun Solaris 用户手册.doc

Sun Solaris 用户手册硬件体系 81--89 Sun1/2/3 CISC Motrala 680x0系列 89--94 Sun4/60 sparc1 Risc sparc 65 sparc1+ 70 sparc2 Server : Sun/290/670/690 93--96 Sparc10/20 SuperSparc Server : 1000/2000 96--97 Ultra1(140/170/170E/200E) UltraSparc SBUS体系结构,UPA接口 Ultra2 Server : E150,E3000 98--99 Ultra5 ,Ultra10 PCI体系结构(IDE外设) Ultra30,Ultra60 Server : E250,E450,E3500 (二)软件体系 Solaris 1.x SunOS 4.1.3+OpenWindow 1.x BSD Solaris 2.x System V 32bit 2.5.1 SunOS 5.5.1 +OpenWindows 2.6 SunOS5.6+CDE1.2 Solaris 2.7(7) 64 bit 指令集 格式: OK> 指令 1.banner 显示当前机器配置状况,CPU,内存,hostid,EtherNet 2.probe-scsi 显示内部SCSI通道所挂接设备 3.probe-scsi-all 显示所有SCSI通道及所挂接设备 4.probe-ide 显示所有IDE通道及所挂接设备(针对U10,U5) probe-fcal-all 5.devalias 显示设备别名,如 cdrom,disk,disk0,disk1等 6.printenv 无参数,显示环境变量或 参数为环境变量名如: printenv auto-boot? 7.setenv 设置环境变量,如: setenv auto-boot? false 8.set-default 恢复环境变量预定值如:set-default auto-boot? 9.set-defaults 恢复所有环境变量预定值 10.boot device [option] 启动主机 device :设备别名,如:cdrom,disk,net 或直接设备名如:Ultra60 外置CDROM /pci@1f,4000/scsi@3,1/disk@6,0:f option : -r 系统重新配置 -s 启动单用户环境 11.eject [cdrom|floppy] 弹出cdrom或floppy

正则表达式

正则表达式定义 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。 列目录时,dir *.txt或ls *.txt中的*.txt就不是一个正则表达式,因为这里*与正则式的*的含义是不同的。 正则表达式是由普通字符(例如字符a 到z)以及特殊字符(称为元字符)组成的文字模式。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 普通字符 由所有那些未显式指定为元字符的打印和非打印字符组成。这包括所有的大写和小写字母字符,所有数字,所有标点符号以及一些符号。 非打印字符 字符含义 \cx 匹配由x指明的控制字符。例如,\cM 匹配一个Control-M 或回车符。x 的值必须为A-Z 或a-z 之一。否则,将c 视为一个原义的'c' 字符。 \f 匹配一个换页符。等价于\x0c 和\cL。 \n 匹配一个换行符。等价于\x0a 和\cJ。 \r 匹配一个回车符。等价于\x0d 和\cM。 \s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于[ \f\n\r\t\v]。 \S 匹配任何非空白字符。等价于[^ \f\n\r\t\v]。 \t 匹配一个制表符。等价于\x09 和\cI。 \v 匹配一个垂直制表符。等价于\x0b 和\cK。 特殊字符 所谓特殊字符,就是一些有特殊含义的字符,如上面说的"*.txt"中的*,简单的说就是表示任何字符串的意思。 如果要查找文件名中有*的文件,则需要对*进行转义,即在其前加一个\。ls \*.txt。正则表达式有以下特殊字符。 $ 匹配输入字符串的结尾位置。如果设置了RegExp 对象的Multiline 属性,则$ 也匹配'\n' 或'\r'。要匹配$ 字符本身,请使用\$。 ( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用\( 和\)。 * 匹配前面的子表达式零次或多次。要匹配* 字符,请使用\*。 = + 匹配前面的子表达式一次或多次。要匹配+ 字符,请使用\+。 . 匹配除换行符\n之外的任何单字符。要匹配 .,请使用\。 [ 标记一个中括号表达式的开始。要匹配[,请使用\[。 ? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配? 字符,请使用\?。 \ 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如,'n' 匹配字符'n'。'\n' 匹配换行符。序列'\\' 匹配"\",而'\(' 则匹配"("。 ^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配^ 字符本身,请使用\^。 { 标记限定符表达式的开始。要匹配{,请使用\{。| 指明两项之间的一个选择。要匹配|,请使用\|。

Solaris11.3安装指南(原创)

Solaris11.3安装指南 ---文本安装 一、 OracleSolaris安装方法 除了AI以外,所有这些安装方法都可用于安装单个系统。AI可用于通过网络安装单个系统或多个系统 1.LiveMedia 图形安装程序的正式名称为“Live Media”,LiveMediaISO映像上的安装程序仅适用于x86平台。这意味着 Oracle Solaris 将被引导到 RAM 中,不会对现有操作系统造成任何影响。加载安装安装程序后,您就可以随意体验 Oracle Solaris,然后确定是否确实要将其安装到系统中(类似于window安装系统中的PM系统)。Live Media 不适合长期使用。例如,关闭系统后,您对系统的所有更改都将丢失。因此,接下来您需要在系统上安装 Oracle Solaris。通过 Live Media 在桌面上放置的 Install Oracle Solaris 图标,您可以轻松进行安装。。

2.文本安装 文本安装介质包含更适用于通用服务器的一组软件。文本安装程序可以在现有的OracleSolarisx86分区或SPARC分片上执行安装。或者,文本安装程序可以使用整个磁盘。如果选择了整个磁盘选项,则会创建分区或分片涵盖目标设备。不论发生何种情况,安装都会覆盖目标分区或分片上的任何内容。如果使用文本安装程序,以后可能需要安装附加的软件包 3.AI安装 可以从 CD、DVD 或 USB 设备引导 AI 映像以仅启动该系统的无人参与安装。AI 清单提供安装指令。要安装的系统必须可访问网络。要完成安装,将从Internet 上或本地网络上的 IPS 系统信息库检索软件包

VC正则表达式的使用

VC正则表达式的使用 2010年9月11日星期六邵盛松 正则表达式是一种对字符进行模糊匹配的一个公式。在数据有效性验证,查找,替换文本中都可以使用正则表达式。 本篇文章主要描述的是使用ATL中两个模板类CAtlRegExp和CAtlREMatchContext。 在使用CAtlRegExp类之前需要添加#include 这个头文件。 RegExp是Regular Expression的缩写 以匹配邮件地址字符串为例说明两个类的使用 该示例更改自https://www.wendangku.net/doc/6a14962514.html,/en-us/library/k3zs4axe(VS.80).aspx CString strRegex=L"({[0-9_]+@[a-zA-Z0-9]+[.][a-zA-Z0-9]+[.]?[a-zA-Z0-9]+})"; CString strInput; strInput=L"admin@https://www.wendangku.net/doc/6a14962514.html,"; CAtlRegExp reRule; wchar_t *wt = (wchar_t *)(LPCTSTR)strRegex; REParseError status = reRule.Parse((const ATL::CAtlRegExp::RECHAR *)wt); if (REPARSE_ERROR_OK != status) { return 0; } CAtlREMatchContext mcRule; wt = (wchar_t *)(LPCTSTR)strInput; if (!reRule.Match((const ATL::CAtlRegExp::RECHAR *)wt,&mcRule)) { AfxMessageBox(L"您输入的邮件地址不合法!"); } else { for (UINT nGroupIndex = 0; nGroupIndex < mcRule.m_uNumGroups; ++nGroupIndex) { const CAtlREMatchContext<>::RECHAR* szStart = 0;

Oracle Solaris 11 上手指南

Oracle Solaris 11 上手指南 作者:Brian Leonard 和Glynn Foster 注:本文替代Solaris 11 Express 版本。Oracle 不再支持Oracle Solaris 11 Express。Oracle Solaris 11 安装简介,包括安装新软件和管理其他系统配置的步骤。 Oracle Solaris 11 分发时有多个不同安装选项:基于服务器的无需手动操作的自动化安装、基于文本的交互式安装(也适用于服务器)和包括完整桌面环境的交互式图形安装程序。 OTN 旨在帮助您充分熟悉 Oracle 技术以便作出明智的 决策。提供文章、软件下载、 文档等。立即加入以获取完成 工作所需的技术资源。 尽管本文所讨论的许多概念也适用于其他Oracle Solaris 11 安装选项,但本文重点介绍交互式图形安装程序。强烈建议使用Oracle Solaris 10 的用户阅读从Oracle Solaris 10 转移到Oracle Solaris 11指南。 图形安装程序的正式名称为“Live Media”。这意味着Oracle Solaris 将被引导到RAM 中,不会对现有操作系统造成任何影响。加载安装安装程序后,您就可以随意体验Oracle Solaris,然后确定是否确实要将其安装到系统中。 您可以下载适用于x86 的Oracle Solaris 11 Live Media(该映像文件约为800 MB)并使用DVD 刻录机刻盘,也可以在虚拟机中或通过Oracle Integrated Lights Out Manager (ILOM) 远程控制台直接使用该ISO 映像。 Live Media 不适合长期使用。例如,关闭系统后,您对系统的所有更改都将丢失。因此,接下来您需要在系统上安装Oracle Solaris。通过Live Media 在桌面上放置的Install Oracle Solaris 图标,您可以轻松进行安装。在继续下一步之前,我们先来了解一下安装选项。 安装选项 可通过以下几种方式安装Oracle Solaris 11: 安装到现有操作系统的虚拟机上 作为独立的操作系统安装到计算机上 在已经安装了其他操作系统的计算机上进行安装(多重引导方案) 安装在虚拟机上

[VIP专享]经典正则表达式QRegExp的解析

QRegExp正则表达式 2010-03-20 17:00 "^\d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-\d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?\d+$" //整数 "^\d+(\.\d+)?$" //非负浮点数(正浮点数 + 0) "^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数 "^((-\d+(\.\d+)?)|(0+(\.0+)?))$" //非正浮点数(负浮点数 + 0) "^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0- 9]*[1-9][0-9]*)))$" //负浮点数 "^(-?\d+)(\.\d+)?$" //浮点数 "^[A-Za-z]+$" //由26个英文字母组成的字符串 "^[A-Z]+$" //由26个英文字母的大写组成的字符串 "^[a-z]+$" //由26个英文字母的小写组成的字符串 "^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串 "^\w+$" //由数字、26个英文字母或者下划线组成的字符串 "^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$" //email地址 "^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$" //url "^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$" // 年-月-日 "^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$" // 月/日/年 "^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$" //Email "(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?" //电话号码 "^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0- 5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$" //IP地址 ^([0-9A-F]{2})(-[0-9A-F]{2}){5}$ //MAC地址的正则表达式 ^[-+]?\d+(\.\d+)?$ //值类型正则表达式 QRegExp是Qt的正则表达式类. Qt中有两个不同类的正则表达式. 第一类为元字符.它表示一个或多个常量表达式. 令一类为转义字符,它代表一个特殊字符. 一.元字符 . 匹配任意单个字符.例如, 1.3 可能是1. 后面跟任意字符,再跟3

js正则表达式使用

js正则表达式使用 一,概述 1,正则表达式,可以说是任何一种编程语言都提供的机制,它主要是提供了对字符串的处理能力。 2,正则表达式在页面处理中的使用场景: 1)表单验证。验证某些域符合某种规则,例如邮件输入框必须输入的是邮件、联系电话输入框输入的必须是数字等等 2)处理DOM模型。例如通过表达式定位DOM中的一个对象或一系列对象,一个例子就是定位id属性中含有某个特殊字符的div对象。 3)纯编程逻辑。直接用于编程的逻辑之中。 3,说明:本部分所举的正则表达式的代码片断,都是经过测试的,但有一点需要注意,对于换行的字符串的定义,我们在表述时使用的是类似如下的形式: var str=“It?s is a beautiful city”; 这种形式直接写在JS代码中是错误的,那如何获取具有换行的字符串呢?简单的办法:在textarea中输入文本并换行,然后将该值赋给JS变量即可。例如: var str=document.forms[0].mytextarea.value; 二,语法与使用 1,定义正则表达式 1)定义正则表达式有两种形式,一种是普通方式,一种是构造函数方式。 2)普通方式:var reg=/表达式/附加参数 表达式:一个字符串,代表了某种规则,其中可以使用某些特殊字符,来代表特殊的规则,后面会详细说明。 附加参数:用来扩展表达式的含义,目前主要有三个参数: g:代表可以进行全局匹配。 i:代表不区分大小写匹配。 m:代表可以进行多行匹配。 上面三个参数,可以任意组合,代表复合含义,当然也可以不加参数。 例子: var reg=/a*b/; var reg=/abc+f/g; 3)构造函数方式:var reg=new RegExp(“表达式”,”附加参数”); 其中“表达式”与“附加参数”的含义与上面那种定义方式中的含义相同。 例子: var reg=new RegExp(“a*b”); var reg=new RegExp(“abc+f”,”g”); 4)普通方式与构造函数方式的区别 普通方式中的表达式必须是一个常量字符串,而构造函数中的表达式可以是常量字符串,也可以是一个js变量,例如根据用户的输入来作为表达式参数等等: var reg=new RegExp(document.forms[0].exprfiled.value,”g”);

Solaris 10操作系统安装升级手册

总行任务编号:2005588 内部限制 2006年4月

Solaris10操作系统安装升级手册1.文件属性 2.文件变更历史清单 3.本次修改变更说明

目录 第1 章前期准备 (1) 第2 章安装过程描述 (1)

Solaris10操作系统安装升级手册 第 1 章前期准备 在安装或升级Solaris系统前,需搜集并确认以下信息: 1.确定安装方式为全新安装还是升级安装,确定原则参考《附件三: Solaris10升级研究项目应用迁移建议方案》; 2.确定系统可用物理内存需大于384MB; 3.确定主机名、IP地址、子网掩码、网关、DNS、时区等信息; 4.确定系统分区方案,以及各文件系统的配置信息,一般根据应用系统 的需求划分; 第 2 章安装过程描述 本文档中描述的是字符界面的安装过程,安装方式为网络安装。管理员也可以选择采用GUI图形界面进行安装,安装过程与字符安装过程基本相同。 由于安装过程耗时较长,建议在服务器管理控制台上登录后安装,尽量避免在telnet终端上进入安装过程,防止安装过程中出现断网等意外情况。 上图,使服务器进入OK状态,登录控制台,在ok提示符下运行boot net命令,

表示系统将从网络启动到单用户状态;如果是从光盘安装,则将安装介质放入光驱后,在ok状态下运行boot cdrom命令。(网络安装服务的配置请参考相关文档) 上图,进入安装过程,选择安装过程使用语言,这里选择英文,

上图,选择终端类型,这里选择3)“DEC VT100”(Secure CRT) 上图,显示安装前的提示信息,按F2继续。

语法词法生成器

语法词法生成器 一、语法词法生成器Flex 语法扫描器生成器 flex (fast lexical analyser generator) 是Lex的另一个替代品。它经常和自由软件Bison语法分析器生成器一起使用。Flex 最初由Vern Paxson 于1987 年用C语言写成。语法分析生成器JavaCC JavaCC(Java Compiler Compiler) 是一个用JA V A开发的最受欢迎的语法分析生成器。这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并把它转换成可以识别且匹 配该语法的JA VA程序。它还提供JJTree等工具来...语法分析器生成工具YACC 这是一个经典的生成语法分析器的工具,大学的《编译原理》课程里介绍过。词法分析工具ANTLR ANTLR(ANother Tool for Language Recognition)它是Java开发的词法分析工具,它可以接受词文法语言描述,并能产生识别这些语言的语句的程序。作为翻译程序的一部分,你可以使用简单的操作符和动作来参数化你的文法...解析器生成器

Bison GNU bison是一个自由软件,用于自动生成语法分析器程序,实际上可用于所有常见的操作系统。Bison把LALR形式的上下文无关文法描述转换为可做语法分析的C或C++程序。在新近版本中,Bison增加了对GLR语法分析算法的支...词法分析器生成工具Lex 这是一个经典的生成词法分析器的工具语法分析器生成工 具Berkeley Yacc Berkeley Yacc (byacc) 是一个高质量的yacc 变种,其目的是为了避免依赖某个特定的编译器。语法分析生成器JFlex JFlex是一个Java的词法/语法分析生成器。JavaScript解析器Jison JavaScript解析器,Coffee就是使用Jison解析的。Jison 将一个上下文无关语法作为输入,输出对应的JavaScript代码,类似Yacc。词法/语法分析框架chrysanthemum chrysanthemum (中文名“菊花”)是一个由C++写成的小巧

正则表达式

要想真正的用好正则表达式,正确的理解元字符是最重要的事情。下表列出了所有的元字符和对它们的一个简短的描述。 字符描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“\n”匹配字符“n”。“\\n”匹配一个换行符。序列“\\”匹配“\”而“\(”则匹配“(”。 ^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。 * 匹配前面的子表达式零次或多次。例如,zo*能匹配“z”以及“zoo”。*等价于{0,}。 + 匹配前面的子表达式一次或多次。例如,“z o+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}。 ? 匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“does”或“does”中的“d o”。?等价于{0,1}。 {n} n是一个非负整数。匹配确定的n次。例如,“o{2}”不能匹配“Bob”中的“o”,但是能匹配“food”中的两个o。 {n,} n是一个非负整数。至少匹配n次。例如,“o{2,}”不能匹配“Bob”中的“o”,但能匹配“fo o o ood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。 {n,m} m和n均为非负整数,其中n<=m。最少匹配n次且最多匹配m次。例如,“o{1,3}”将匹配“fooooood”中的前三个o。“o{0,1}”等价于“o?”。请注意在逗号和两个数之间不能有空格。 ? 当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串“oooo”,“o?”将匹配单个“o”,而“o+”将匹配所有“o”。 点匹配除“\n”之外的任何单个字符。要匹配包括“\n”在内的任何字符,请使用像“[\s\S]”的模式。

很完整的一篇正则表达式总结

1、正则表达式-完结篇---工具类开发--- ? 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 '/.+/', 'email'=> '/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/', 'url'=> '/^http(s?):\/\/(?:[A-za-z0-9-]+\.)+[A-za-z]{2,4}(?:[\/ \?#][\/=\?%\-&~`@[\]\':+!\.#\w]*)?$/', 'currency'=> '/^\d+(\.\d+)?$/', 'number'=> '/^\d+$/', 'zip'=> '/^\d{6}$/', 'integer'=> '/^[-\+]?\d+$/', 'double'=> '/^[-\+]?\d+(\.\d+)?$/',

5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2'english'=> '/^[A-Za-z]+$/', 'qq'=> '/^\d{5,11}$/', 'mobile'=> '/^1(3|4|5|7|8)\d{9}$/', ); //定义其他属性 private$returnMatchResult=false; //返回类型判断 private$fixMode=null; //修正模式 private$matches=array(); //存放匹配结果 private$isMatch=false; //构造函数,实例化后传入默认的两个参数 public function __construct($returnMatchResult=false,$fixMode=null){ $this->returnMatchResult=$returnMatchResult; $this->fixMode=$fixMode; } //判断返回结果类型,为匹配结果matches还是匹配成功与否isMatch,并调用返回方法 private function regex($pattern,$subject){ if(array_key_exists(strtolower($pattern), $this->validate)) $pattern=$this->validate[$pattern].$this->fixMode; //判断后再连接上修正模式作为匹配的正则表达式 $this->returnMatchResult ?

正则表达式经典教程

正则表达式是常见常忘,所以还是记下来比较保险,于是就有了这篇笔记。 希望对大家会有所帮助。J 1.什么是正则表达式 简单的说,正则表达式是一种可以用于文字模式匹配和替换的强有力的工具。是由一系列普通字符和特殊字符组成的能明确描述文本字符串的文字匹配模式。 正则表达式并非一门专用语言,但也可以看作是一种语言,它可以让用户通过使用一系列普通字符和特殊字符构建能明确描述文本字符串的匹配模式。除了简单描述这些模式之外,正则表达式解释引擎通常可用于遍历匹配,并使用模式作为分隔符来将字符串解析为子字符串,或以智能方式替换文本或重新设置文本格式。正则表达式为解决与文本处理有关的许多常见任务提供了有效而简捷的方式。 正则表达式具有两种标准: ·基本的正则表达式(BRE – Basic Regular Expressions) ·扩展的正则表达式(ERE – Extended Regular Expressions)。 ERE包括BRE功能和另外其它的概念。 正则表达式目前有两种解释引擎: ·基于字符驱动(text-directed engine) ·基于正则表达式驱动(regex-directed engine) Jeffery Friedl把它们称作DFA和NFA解释引擎。 约定: 为了描述起来方便,在本文中做一些约定: 1. 本文所举例的所有表达时都是基于NFA解释引擎的。 2. 正则表达式,也就是匹配模式,会简写为Regex。 3. Regex的匹配目标,也就是目标字符串,会简写为String。 4. 匹配结果用会用黄色底色标识。 5. 用1\+1=2 括起来的表示这是一个regex。 6. 举例会用以下格式: Regex Target String Description test This is a test 会匹配test,testcase等 2.正则表达式的起源正则表达式的?祖先?可以一直上溯至对人类神经系统如何工作的早期研究。Warren McCulloch 和 Walter Pitts 这两位神经生理学家研究出一种数学方式来描述这些神经网络。 1956 年, 一位叫 Stephen Kleene 的美国数学家在 McCulloch 和 Pitts 早期工作的基础上,发表了一篇标题为?神经网事件的表示法?的论文,引入了正则表达式的概念。正则表达式就是用来描述他称为?正则集的代数?的表达式,因此采用?正则表达式?这个术语。

正则表达式

[23:39:35] 王尧说:"^\d+$"//非负整数(正整数+ 0) "^[0-9]*[1-9][0-9]*$"//正整数 "^((-\d+)|(0+))$"//非正整数(负整数+ 0) "^-[0-9]*[1-9][0-9]*$"//负整数 "^-?\d+$"//整数 "^\d+(\.\d+)?$"//非负浮点数(正浮点数+ 0) "^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"//正浮点数 "^((-\d+(\.\d+)?)|(0+(\.0+)?))$"//非正浮点数(负浮点数+ 0) "^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"//负浮点数 "^(-?\d+)(\.\d+)?$"//浮点数 "^[A-Za-z]+$"//由26个英文字母组成的字符串 "^[A-Z]+$"//由26个英文字母的大写组成的字符串 "^[a-z]+$"//由26个英文字母的小写组成的字符串 "^[A-Za-z0-9]+$"//由数字和26个英文字母组成的字符串 "^\w+$"//由数字、26个英文字母或者下划线组成的字符串 "^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"//email地址 "^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"//url /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ //年-月-日 /^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ //月/日/年 ^(\w+((-\w+)|(\.\w+))*)\+\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$ //Emil "(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?" //电话号码 "^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1, 2}|1dd|2[0-4]d|25[0-5])$" //IP地址 匹配中文字符的正则表达式:[\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff] 匹配空行的正则表达式:\n[\s| ]*\r 匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 匹配首尾空格的正则表达式:(^\s*)|(\s*$) 匹配Email地址的正则表达式:^(\w+((-\w+)|(\.\w+))*)\+\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$ 匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$ 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})? 匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$ 漢字 Private Ps_KanjiRegex As String = "\u00A0-\u303F\u3200-\u33CF\u4E00-\uFF60\uFFA0-\uFFE5" ''入力可能漢字のコード(正規表現チェック用)

相关文档
相关文档 最新文档