正则表达式——普通字符组
字符组表示“在同一个位置可能出现的各种字符”, 其写法是在一对方括号 [ 和 ] 之间列出所有可能出现的字符。
例 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