python学習ノート - 6つの「クイックスタートをプログラミングPythonは自動化の退屈な仕事をしましょう」

練習6つの
強力なパスワードを検出
用途正規表現はパスワードで渡された文字列は、強力なパスワードであることを確実にするという機能を記述します。強力なパスワードの定義は次のとおりです。長さは劣らず8文字以内、少なくとも一桁の大文字と小文字の両方を含みます。あなたは、その強度を確保するために、より積極的に文字列式をテストする必要があるかもしれません。

#!python3
import re
def test_password(password):
	right=True	
	if len(password)>=8:
		rules=(r'\d+',r'[a-z]+',r'[A-Z]+')
		for rule in rules:
			ru=re.compile(rule)#初始正则表达式
			mo=ru.search(password)#匹配字符串
			try:
				mo.group()#一旦没有匹配会出现Attribte错误
			except AttributeError:
				right=False#如果出现错误证明缺少对应字符改变标志位
				num=rules.index(rule)#获取出现错误规则的下标
				if num==0:
					print('密码缺少数字')
				elif num==1:
					print('密码缺少小写字母')
				elif num==2:
					print('密码缺少大写字母')	
		if right:
			print('密码通过验证')
	else:
		print('密码少于8位')

ストリップ()正規表現のバージョンの
書き込み文字列を取る関数、同じこと及びストリップ()文字列のメソッドを実行します。唯一の着信文字列を削除する場合は、他のパラメータは、その後、末尾に文字列の末尾から空白文字を削除しません。それ以外の場合は、2番目のパラメータを指定文字の関数は、文字列から削除されます。

def for_str(word,find=None):
	if find==None:#不传入find则按照空格处理
		l_strip=re.compile(r'^ +| +$')
		#r_strip=re.compile(r' +$')
		#x=l_strip.search(word).group()
		x=l_strip.sub('',word)
		print(x)
	else:#find不为空则替换匹配find值为空
		x_find=re.compile(find)
		result_f=x_find.sub('',word)
		print(result_f)
公開された23元の記事 ウォンの賞賛5 ビュー388

おすすめ

転載: blog.csdn.net/weixin_43287121/article/details/104483626