re这个库,是一种正在表达式的实现,可以用提供的方法,对字符串进行匹配,替换 常用的方法是match,search,fullmatch,findall(快速提取你想要的数据,立即返回,字符串),finditer(返回一个个match对象,可以提取分组)
match,search,fullmatch会返回一个match对象 finditer返回一个match,有了match就可以提取分组 分组有两种,一种是有名字的,一种是没名字的,都一样,都是分组,所以提供了一个groups,可以从这个方法提取所有分组,也提供了每一个分组的使用方式,group(N),N就是分组号,分组0特殊,是当前match匹配出来是什么 groups所有分组,group 分组 命名分组就是groupdict,分组字典必须有名字,名字从命名分组来,所以有名字的分组才出现在groups里 groupdict只跟命名分组相关 分组很重要,是常用的方法,通过这个方法可以访问到你想要的的数据 single看做一行了,全匹配了 .点就是从头到尾 不用单行
后面非贪婪 前后都非贪婪,第一行的h就非贪婪取一个 \w就找出这些东西来 在中括号里的点就可以不用转义 但是其实cn后面应该还有.这个叫跟域名,先修改下, 浏览器验证可以绕过,绕过之后照样给后台数据说注册邮箱,最后还是需要写python来进行验证,先用正则表达式来提交有效部分 fullmatch,正则表达式应该对这个匹配的应该是全称匹配,如果用fullmatch就是告诉,没有一个非法字符,有一个非法字符,就跟你邮箱长度是有差异的 所以用fullmatch简单匹配一下就好 邮箱匹配出来,什么都不能说明,因为要注册,就需要发送激活的邮件,通过你自己的smtp、、服务器将邮件发出去,按照你给的链接激活,等于响应给你,你就知道确有此人
手机号,和邮箱都需要简单的提取。要在后面的服务器做一下验证,浏览器的验证都可以跳过 如果忘记写闭>了,浏览器有些会认为下一个<就是到封口了 a标签,链接,本身的意思是锚,anchor,href属性就用作链接的 _blank代表打开一个新页 最简单就是用这种方式提取来拿到 如果要提取所有链接 如果是这么写的就比较麻烦了,是网页里面的换行符的意思,代表mag换行edu 它也可能这么写,后面的字着重用红色表示 首先贪婪了,singleline 把single line去掉 但是遇到div也超出去了 遇到最好的办法还是取反 如果这一段也算内容 这个地方就锚死了是什么东西了,因为中间分组提取出来就 是空串 没选single line只能一行行处理,多行模式,点.号不突破\n 前面这一部分就是选择a标签以及它的属性,绝对不会选择a标签之外的 找一个标签,以及找一个标签内封口的东西 div内的标签分组是什么 div内的标签分组是什么 把http,https拿到了 ?<>命名分组 这就是url的提取方式 前面一定要先匹配,谁或者谁一定要考虑谁前谁后 一般网页怎么判断你密码输入强度,都是靠本地js脚本来判断,加入前端不判断,你就要用后端程序python来判断了 要排个序(密码长度有限,密码是可取的),因为正则表达式这么写了就固定顺序了 能不能不用排序靠一个表达式来实现 61 =97=a 41=4*16+1=64+1=65 A 下划线在大小写之间,所以这两个之间差了16进制二十,排完序,下划线一定在这里面 能不能先判断至少里面含有一个数字,就打标记 出现\d+ 1000 1 出现A-Z 0100 1 出现a-z 0010 1 下划线_ 0001 1 没找到+1,都找到就是4,统计出来4就是强密码,要遍历4遍 但是万一有非法字符 所以还需要在这之前做 1.先判断位数 10~15 可以用断言,在数字签名或者小写字母后面一定不能怎么样,就可以判断有没有非法字符 2.判断有没有字符把这些字符取反[ ……\dA-Za-z_]+ 3.往下走说明都是合法字符且长度合适 (判断数字,有没有大小写,下划线。判断出一个分值,1分就是告诉用户强度太低,2分就是中) 4表示最强,3次强,2中,1低 出现|~}这种就不好弄了
谁最可能用户不填就需要往前先判断,因为用户最可能落下这些 以前是字符一个个遍历,现在可以split断成你想要的 字符串前面+r,\n这种避免歧义 -\w,减号和、\w取反,来切割,就是空白字符,加号代表尽量多 正则表达式切每一行, 如果长度是有的,等效false 就把找个单词yield出来 写成正则表达式方便,不会写makekey2 空间换时间的时候就要分析,是不停的创建,还是固定的开辟空间 用来set占更大空间,需要用hash,多占空间多提高效率
有些不支持断言,所以还是支持分组
一般你登陆网站,推荐信息,都有两种做法,1.实时分析,2.离线分析(对日志进行分析,然后建模进行分析推荐给你)
C语言只有函数,C++有面向对象,面向对象肯定是个难点