1. 程式人生 > >正則表示式——普通字元組

正則表示式——普通字元組

字元組表示“在同一個位置可能出現的各種字元”, 其寫法是在一對方括號 [ 和 ] 之間列出所有可能出現的字元。

例 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