回覆列表
-
1 # 使用者2211841451234196
-
2 # 使用者575743882969992
匯入re模組:
import reidCardPattern = r'44\d{15}(\d|x)' #比如廣東省身份證以44開頭str1 = '4405821988110812180x' #要比較的字串m=re.compile(idCardPattern).match(str1)print("Match: " + str(m.group()))
以上求示例在Python3 下測試透過,可匹配18位號碼。只要找前6位號碼改為:idCardPattern = r'44\d{4}' 。 -
3 # 使用者769270080341652
1、python正則表示式辨別輸入日期規範如下:
year,month,day=eval(input("請輸入年月日,之間用逗號分開"))
months=[31,28,31,30,31,30,31,31,30,31,30,31]
if (year%4==0 and year %100 !=0) or (year%400==0):
months[1]=29 #閏年的話2月最多29天
if month<1 or month>12:
print("月份不合法")
elif day<1 or day>months[month+1]:
print("日不合法")
else:
print("年月日合法")
2、程式碼:
3、結果:
正則的話importrehtml="<ahref='xxx.xxx'title='xxx.xxx.xxx'>sampletext1</a>abcdef<ahref='xxx.xxx'title='xxx.xxx.xxx'>sampletext2</a>"result=map(lambdaname:re.sub("<ahref=.*?>","",name.strip().replace("</a>","")),re.findall("<ahref=.*?>.*?</a>",html))printresult上面程式碼會把所有atag裡的東西存在result這個list裡面。另外python有個模組叫BeautifulSoup,專門用來處理html的,你有空可以看下