初学python,尝试着写一写,仅供参考,欢迎指正!
7.18.1 强口令检测
写一个函数,它使用正则表达式,确保传入的口令字符串是强口令。强口令的定义是:长度不少于8 个字符,同时包含大写和小写字符,至少有一位数字。你可能需要用多个正则表达式来测试该字符串,以保证它的强度。
import re passWord=str(input('请输入口令,长度不小于8\n')) if len(passWord)<8: passWord=input('the length must be bigger than eight\n') if re.compile(r'[A-Z]').search(passWord)==None: passWord=input('password must contain Upper character\n') if re.compile(r'[a-z]').search(passWord)==None: passWord=input('password must contain lower character\n') if re.compile(r'[0-9]').search(passWord)==None: passWord=input('password must contain digit\n') else: print('proper password,congratulations')
7.18.2 strip()的正则表达式版本
写一个函数,它接受一个字符串,做的事情和strip()字符串方法一样。如果只传入了要去除的字符串,没有其他参数,那么就从该字符串首尾去除空白字符。否则,函数第二个参数指定的字符将从该字符串中去除。
import re def stripFunc(aString,arguement=''): if arguement=='': aString=re.compile(r'^\s*').sub('',aString) aString=re.compile(r'\s*$').sub('',aString) print(aString) else: aString=re.compile('^'+arguement+'*').sub('',aString) aString=re.compile(arguement+'*$').sub('',aString) print(aString) stringOne=str(input('print original string\n')) stringTwo=str(input('print replacement string\n')) stripFunc(stringOne,arguement=stringTwo)