正则表达式——普通字符组

字符组表示“在同一个位置可能出现的各种字符”, 其写法是在一对方括号 [ 和 ] 之间列出所有可能出现的字符。

例 1 - 1 判断数字字符的伪代码

charStr == "0" || charStr == "1" ··· || charStr == "9"

这种解法的问题在与太过于烦琐

例 1 - 2 用正则表达式判断数字字符

re.search("[0123456789]", charStr) != None // python 使用方法

例1-3  用正则表达式判断数字字符在各种语言中的应用

 1 .NET(C#
 2 //能匹配则返回true,否则返回false   
 3 Regex.IsMatch(charStr, "[0123456789]");   
 4 Java  
 5 //能匹配则返回true,否则返回false   
 6 charStr.matches("[0123456789]");   
 7 JavaScript  
 8 //能匹配则返回true,否则返回false   
 9 /[0123456789]/.test(charStr);  
10 PHP  
11 //能匹配则返回1,否则返回0  
12 preg_match("/[0123456789]/", charStr);   
13 Python  
14 #能匹配则返回RegexObject,否则返回None   
15 re.search("[0123456789]", charStr)  
16 Ruby  
17 #能匹配则返回0,否则返回nil  
18 charStr =~ /[0123456789]/  

 例1-4  使用^和$测试string由pattern完整匹配

^和$是正则表达式中的特殊字符,它们并不匹配任何字符,只是表示"定位到字符串的起始位置"和"定位到字符串的结束位置"

# 只要字符串中包含数字字符,就可以匹配  
re.search("[0123456789]", "2") != None          #  => True  
re.search("^[0123456789]$", "12") != None       #  => False   
re.search("[0123456789]", "a2") != None         #  => True  

# 整个字符串就是一个数字字符,才可以匹配  
re.search("[0123456789]", "2") != None          #  => True  
re.search("^[0123456789]$", "12") != None       #  => False  
re.search("^[0123456789]$", "a2") != None       #  => False  

 

 

 

 

posted @ 2018-10-19 09:55  gaara724  阅读(709)  评论(0编辑  收藏  举报