文档章节

Python 的正则表达式

ricardohn
 ricardohn
发布于 2016/02/13 12:52
字数 623
阅读 8
收藏 0

First:

一些元字符则不会被作为普通字符来处理,它们包括. ^ $ * + ? { [ ] \ | ( )

.会匹配除了换行以外的任何字符;\w等价于[a-zA-Z0-9_]会匹配单一字母、数字或下划线字符,而\W则会匹配任何非字母、数字和下划线的单一字符;\b会匹配“单一字母、数字或下划线字符”和“任何非字母、数字和下划线的单一字符”之间的边界。\s等价于[ \n\r\t\f],会匹配一个空白字符(包括空格、换行、返回、制表符、表格),\S则匹配所有非空白字符;\t \n \r依次用于匹配制表符、换行符、返回符;\d等价于[0-9]用于匹配十进制表示的的数字

^作为开始标记,$作为结束标记,分别用于标记一个字符串的开始和结束的位置。\用于一些字符的转义,比如\.表示对于一个真实点字符的匹配,\\表示对于一个真实反斜杠字符的匹配等。如果你对不是很确定一些字符是否需要进行转义才能匹配,你大可都加上斜杠,比如对于@你写成\@是一定没有问题的。

Second:

正则表达式调试建议:

1、你可以设计一系列放在列表里的字符串用于调试,其中一部分是可以产生符合正则表达式的结果的,另一部分是产生不符合正则表达式的结果的。请注意,在设计这些字符串时,尽可能让他们的特征表现的更为不同一些,便于覆盖到我们可能出现的各种正则表达式没有写对的错误。例如,对于一个存在+的正则表达式,我们可以考虑选用一个符合*但是不符合+的字符串。

2、然后你可以写一个循环,依次验证每个列表内的字符串是否符合指定的某个正则表达式并且和你设定的存在另一个列表内的预期结果进行比对,如果出现了不一致的情况,则你应该考虑看看你的正则表达式是不是还需要修改,如果结果基本一致,那么我们可以考虑进一步修改我们用于调试的字符串或添加新的字符串。


本文转载自:

共有 人打赏支持
ricardohn
粉丝 1
博文 76
码字总数 30236
作品 0
成都
私信 提问
Python 正则表达式(字符)详解

Python正则表达式 — 简介  其实正则表达式这种技术,源于一个很简单的问题:    如何通过变成使得计算机具有在文本中检索某种模式的能力?   而正则表达式为通过编程实现高级的文本模式...

jamesjoshuasss
2017/03/01
0
0
python测试开发自动化测试数据分析人工智能自学每周一练-2018-07

python每周一练 每周五发布python需求,所有需求都来自实际企业。下周五发布参考答案。 python测试开发自动化测试数据分析人工智能自学每周一练-2018-06 2018-07-06 使用python3 smtplib通过...

Python测试开发人工智能
07/06
0
0
超详细Python正则表达式操作指南(re使用),一

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编...

Python雁横
05/26
0
0
follow大神教程——实践java爬虫之补充

前4篇利用Java本身自带的URLConnection实现一些基本的抓取页面的功能,但是对于一些比较高级的功能,比如重定向的处理,HTML标记的去除,仅仅使用URLConnection还是不够的。 或许HttpClient抓...

realsa
2014/07/02
0
0
Python处理正则表达式超时的办法

title: Python处理正则表达式超时的办法 tags: [python3, 正则表达式超时, re模块] date: 2018-04-27 21:40:21 categories: Python keywords: python3, 正则表达式, re模块, linux信号 最近在...

PigPeek
04/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

jquery

语法 描述 实例 $("*") 选取所有元素 在线实例 $(this) 选取当前 HTML 元素 在线实例 $("p.intro") 选取 class 为 intro 的 <p> 元素 在线实例 $("p:first") 选取第一个 <p> 元素 在线实例 ...

mskk
16分钟前
1
0
微信红包设计方案

前言 微信红包一经推出,春节期间微信用户红包总发送量达80.8亿,红包峰值40.9w/秒,在如此量级下,系统设计存在各种变数,稍有闪失会功亏一篑。 红包系统 红包系统有三部分组成:信息流,业...

春哥大魔王的博客
26分钟前
1
0
微信开发-正式号的配置

1、设置相关 业务域名的设置(不设置的话,相关页面会显示防欺诈盗号信息提示) JS接口安全域名设置 网页授权域名设置 注意:以上三个设置中都有下载文件的提示,此文件内容一样,下载一个即可...

Code辉
32分钟前
1
0
微服务之Eureka服务发现

当调用API或者发起网络通信的时候,无论如何我们都要知道被调用方的IP和服务端口,大部分情况是通过域名和服务端口,事实上基于DNS的服务发现,因为DNS缓存、无法自治和其他不利因素的存在,...

架构师springboot
32分钟前
0
0
spring boot2 admin login

版本: admin server 配置 admin client 配置 参考资料

showlike
34分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部