字符 | 描述 |
\ | 将下一个字符标记为特殊字符或字面值。例如"n"与字符"n"匹配。"\n"与换行符匹配。序列"\\"与"\"匹配,"\("与"("匹配。 |
^ | 匹配输入的开始位置。 |
$ | 匹配输入的结尾。 |
* | 匹配前一个字符零次或几次。例如,"zo*"可以匹配"z"、"zoo"。 |
+ | 匹配前一个字符一次或多次。例如,"zo+"可以匹配"zoo",但不匹配"z"。 |
? | 匹配前一个字符零次或一次。例如,"a?ve?"可以匹配"never"中的"ve"。 |
. | 匹配换行符以外的任何字符。 |
(pattern) | 与模式匹配并记住匹配。匹配的子字符串可以从作为结果的Matches集合中使用Item[0]...[n]取得。如果要匹配括号字符(和),可使用"\("或"\)"。 |
x|y | 匹配x或y。例如"z|wood"可匹配"z"或"wood"。"(z|w)oo"匹配"zoo"或"wood"。 |
{n} | n为非负的整数。匹配恰好n次。例如,"o{2}"不能与"Bob中的"o"匹配,但是可以与"foooood"中的前两个o匹配。 |
{n,} | n为非负的整数。匹配至少n次。例如,"o{2,}"不匹配"Bob"中的"o",但是匹配"foooood"中所有的o。"o{1,}"等价于"o+"。"o{0,}"等价于"o*"。 |
{n,m} | m和n为非负的整数。匹配至少n次,至多m次。例如,"o{1,3}"匹配"fooooood"中前三个o。"o{0,1}"等价于"o?"。 |
[xyz] | 一个字符集。与括号中字符的其中之一匹配。例如,"[abc]"匹配"plain"中的"a"。 |
[^xyz] | 一个否定的字符集。匹配不在此括号中的任何字符。例如,"[^abc]"可以匹配"plain"中的"p". |
[a-z] | 表示某个范围内的字符。与指定区间内的任何字符匹配。例如,"[a-z]"匹配"a"与"z"之间的任何一个小写字母字符。 |
[^m-z] | 否定的字符区间。与不在指定区间内的字符匹配。例如,"[m-z]"与不在"m"到"z"之间的任何字符匹配。 |
\b | 与单词的边界匹配,即单词与空格之间的位置。例如,"er\b"与"never"中的"er"匹配,但是不匹配"verb"中的"er"。 |
\B | 与非单词边界匹配。"ea*r\B"与"never early"中的"ear"匹配。 |
\d | 与一个数字字符匹配。等价于[0-9]。 |
\D | 与非数字的字符匹配。等价于[^0-9]。 |
\f | 与分页符匹配。 |
\n | 与换行符字符匹配。 |
\r | 与回车字符匹配。 |
\s | 与任何白字符匹配,包括空格、制表符、分页符等。等价于"[ \f\n\r\t\v]"。 |
\S | 与任何非空白的字符匹配。等价于"[^ \f\n\r\t\v]"。 |
\t | 与制表符匹配。 |
\v | 与垂直制表符匹配。 |
\w | 与任何单词字符匹配,包括下划线。等价于"[A-Za-z0-9_]"。 |
\W | 与任何非单词字符匹配。等价于"[^A-Za-z0-9_]"。 |
\num | 匹配num个,其中num为一个正整数。引用回到记住的匹配。例如,"(.)\1"匹配两个连续的相同的字符。 |
\n | 匹配n,其中n是一个八进制换码值。八进制换码值必须是1, 2或3个数字长。例如,"\11"和"\011"都与一个制表符匹配。"\0011"等价于"\001"与"1"。八进制换码值不得超过256。否则,只有前两个字符被视为表达式的一部分。允许在正则表达式中使用ASCII码。 |
\xn | 匹配n,其中n是一个十六进制的换码值。十六进制换码值必须恰好为两个数字长。例如,"\x41"匹配"A"。"\x041"等价于"\x04"和"1"。允许在正则表达式中使用ASCII码。 |
说明
把下面代码拷贝到QTP中运行(替换“正则表达式”和“原字符串”):
Function RegExpTest(patm,strng)
Dim regEx,retVal
Set regEX = New RegExp
regEx.Pattern=patm
regEx.IgnoreCase=False
retVal = regEx.Test(strng)
If retVal Then
RegExpTest = "匹配成功."
Else
RegExpTest = "匹配失败."
End If
End Function
MsgBox(RegExpTest("正则表达式","原字符串"))
了解和使用正则表达式
通过正则表达式,QuickTest可以使用不同的值来标识对象和文本字符串。您可以在以下操作中使用正则表达式:
• 在对话框或编程描述中定义对象的属性值
• 参数化步骤
• 使用不同的值来创建检查点
例如,如果要创建日期文本字符串的文本检查点,可以使用正则表达式,但显示的日期随当前日期变化。如果将日期定义为正则表达式,则检查点检查捕获的文本字符串是否与期望的日期格式匹配,而不是检查准确的日期值。
正则表达式是指定复杂搜索短语的字符串。通过使用特殊字符,例如句点(.)、星号(*)、插字号(^)和方括号([ ]),您可以定义搜索条件。
注意:
您可以只将正则表达式应用于字符串类型的值。
当正则表达式