def
ismatch
(text, pattern)
:# 判斷pattern是否為空
ifnot pattern:
# 如果pattern為空,判斷text是否為空,如果text也為空,則返回匹配成功,text不為空,則返回失敗
return
not text
# bool(text)表示text是否為空,後半句表示pattern當前字元是否與當前text字元相等或者是.符號。
first_match =
bool
(text)
and pattern[0]
inprint()
# 如果pattern剩餘字元數量大於2,並且下乙個pattern字元是*
iflen
(pattern)
>=
2and pattern[1]
=='*'
:# 如果當前pattern字元與text字元不同且不為.符號(即first_match為false),則遞迴到後面乙個非*的pattern字元來繼續匹配
return
(ismatch(text, pattern[2:
])or first_match and ismatch(text[1:
], pattern)
)else
:# 如果pattern剩餘字元數量小於2或者下乙個pattern字元不是*
# 則判斷當前pattern字元和text字元是否相等,如果相等繼續往後判斷
return first_match and ismatch(text[1:
], pattern[1:
])print
(ismatch(
'sf'
,'s'
))
正規表示式判斷
public class test 校驗輸入的qq號碼是否符合規則 param qq return public static boolean checkqq1 string qq 如果qq號碼中有任何一位不是數字,就直接返回false for int i 0 i qq.length i 如果首位是...
SQL的正規表示式(簡單判斷)
建表 public static boolean iscreatetab string sql 測試語句 create table a id int,name char 5 age int,d varchar 12 primary key id 刪表 public static boolean is...
javascript正規表示式判斷
整數格式 patternsdict.long 0 1 9 d 小數格式 patternsdict.double 0 1 9 d d 數值格式 patternsdict.number 0 1 9 d 0 1 9 d d 自然數 patternsdict.positive 1 9 d 負整數 patte...