索鸟网

  1. 首页
  2. python里使用正则表达式的限制边界功能

python里使用正则表达式的限制边界功能


在前面的例子都是使用查找的功能,可以搜索一串字符串里任意位置的字符串来匹配。其实有时候已经知道只有在一行输入的开始位置才可能出现,这时可以使用match()函数来代替search()函数。因为match()函数只会从字符串开头就进行匹配,而search()函数是任意位置进行匹配。
如下例子:
#python 3.6
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579
#
import re

text = "This is some text -- with punctuation."
pattern = "is"

print("Text   :", text)
print("Pattern:", pattern)

m = re.match(pattern, text)
print("Match  :", m)
s = re.search(pattern, text)
print("Search :", s)

print("*" * 80)
text = "is test"
m = re.match(pattern, text)
print("Match  :", m)


结果输出如下:

Text   : This is some text -- with punctuation.
Pattern: is
Match  : None
Search : <_sre.SRE_Match object; span=(2, 4), match="is">
********************************************************************************
Match  : <_sre.SRE_Match object; span=(0, 2), match="is">

深入浅出Numpy
http://edu.csdn.net/course/detail/6149 

Python游戏开发入门

http://edu.csdn.net/course/detail/5690

你也能动手修改C编译器

http://edu.csdn.net/course/detail/5582

纸牌游戏开发

http://edu.csdn.net/course/detail/5538 

五子棋游戏开发

http://edu.csdn.net/course/detail/5487
RPG游戏从入门到精通
http://edu.csdn.net/course/detail/5246
WiX安装工具的使用
http://edu.csdn.net/course/detail/5207
俄罗斯方块游戏开发
http://edu.csdn.net/course/detail/5110
boost库入门基础
http://edu.csdn.net/course/detail/5029
Arduino入门基础
http://edu.csdn.net/course/detail/4931
Unity5.x游戏基础入门
http://edu.csdn.net/course/detail/4810
TensorFlow API攻略
http://edu.csdn.net/course/detail/4495
TensorFlow入门基本教程
http://edu.csdn.net/course/detail/4369
C++标准模板库从入门到精通 
http://edu.csdn.net/course/detail/3324
跟老菜鸟学C++
http://edu.csdn.net/course/detail/2901
跟老菜鸟学python
http://edu.csdn.net/course/detail/2592
在VC2015里学会使用tinyxml库
http://edu.csdn.net/course/detail/2590
在Windows下SVN的版本管理与实战 
http://edu.csdn.net/course/detail/2579
Visual Studio 2015开发C++程序的基本使用 
http://edu.csdn.net/course/detail/2570
在VC2015里使用protobuf协议
http://edu.csdn.net/course/detail/2582
在VC2015里学会使用MySQL数据库
http://edu.csdn.net/course/detail/2672


来源地址:http://blog.csdn.net/caimouse/article/details/78229481 版权归作者所有!

相关教程

  • python里使用正则表达式的边界符进行匹配

    在我们日常使用中,经常需要搜索关键位置进行字符串的匹配,比如一行文本的开头,又比如一个字符串的开头,或者结尾。 这时候就需要使用正则表达式的边界符进行匹配,它们定义如下:定义字符 意义^ 字符串的开头或一行的开头$ 字符串的结尾或一行的结尾\A 字符串的开头\Z 字符串的结尾\b 空字符串的开头或一个单词的结尾\B 非空字符串的开头或非一个单词的结尾,与\b相反测
  • python里使用正则表达式的转义字符的匹配

    前面学习了预先定义的集合,在集合里要添加一个反斜线在里面,如果要匹配这个反斜线,怎么办呢?聪明的人们已经想到一个方法,连续两反斜线,就是表示一个反斜线的匹配,例子如下:from re_test_patterns import test_patterns test_patterns( r"\d+ \D+ \s+", [(r"\\.\+", "esc
  • python里使用正则表达式的预先定义集合字符

    在前面我们学习了使用正则表达式的字符集合的表示方法,可以采用枚举的方法,也可以采用连接符的方法,但是还是觉得有些麻烦,比如字符集合,数字集合等等,这些集合可以预先定义好,这不是更加方便了吗?因此在正则表达式里就预先定义下面的这些集合:代码 意义\d 数字集合\D 非数字集合\s 分隔符 (tab, space, newline, etc.)\S 非分隔符\w 字母
  • 〇〇四章 input 限制输入内容的正则表达式

    网上搜罗,已测试 两位小数 <input type = "text" name= "price" id = "price" onkeyup= "if( ! /^-?\d+.?\d{0,2}$/.test(this.value)){ var s = this.value;this.value=s.substring(
  • python正则表达式

    1、知识点导图 1、正则表达式简单介绍及意义 2、正则表达式的基本语法 3、正则表达式的七种武器 4、正则表达式的常见语法 2、正则表达式的意义 什么是正则表达式 正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得
  • Python 正则表达式

    最近研究Python爬虫,很多地方用到了正则表达式,但是没好好研究,每次都得现查文档。今天就专门看看Python正则表达式。本文参考了官方文档 re模块。 模式 首先正则表达式的语法我就不说了,这玩意倒是不算难,用的时候现查就行了——正则表达式_百度百科。 在很多编程语言中,由于有转义字符这么一种东西的存在,导致正则表达式需要使用两个斜杠来处理。如果编程
  • python 正则表达式

    先上图~ .*?结合是什么意思 分开来说: 1、. 匹配任意除换行符“\n”外的字符; 2、*表示匹配前一个字符0次或无限次; 3、+或后跟?表示非贪婪匹配,即尽可能少的匹配,如?重复任意次,但尽可能少重复; 4、 .*? 表示匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复。 如:a.*?b匹配最短的,以a开始,以b结束的字符串。如果把它应用于aabab的话,它
  • python 正则表达式

    正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的。 因为正则表达式也是用字符串表示的,所以,我们要首先了解如何用字符来描述字符。 正则表达式匹配: 如果直接给出字符,就是精确匹配。 d 可以匹配一个数字 w 可以匹配一个字母或数