<dl id="opymh"></dl>

<div id="opymh"></div>
      <div id="opymh"><tr id="opymh"></tr></div>

        <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

        <em id="opymh"></em>

        <em id="opymh"><ol id="opymh"></ol></em>

              频道栏目
              首页 > 程序开发 > Web开发 > Python > 正文
              Python正则表达式学习之match和search的实例
              2018-07-27 14:46:06         来源:jeekmary的博客  
              收藏   我要投稿

              怎么使用,怎么返回什么

              import re
              
              if __name__ == '__main__':
               bt = 'bat|bet|bit'
               m = re.match(bt, 'bet')
               if m is not None:
                result = m.group()
                print(result)
              
               m = re.match(bt, 'batbet')
               if m is not None:
                result = m.group()
                print(result)
              
               m = re.match(bt, 'ggbet')
               if m is not None:
                result = m.group()
                print(result)
              # 控制台打印出来的结果为:
              bet
              bat

              从上面的信息来看,python的 re 模块中的 match方法这种用法只能匹配出字符串开始是否包含指定的部分,而且只读取返回的结果只有一条数据,不知道大家理解了没有,没有理解可以将上面的代码直接复制运行,当然这句话也不完全对,上面代码如果换成这样的话就说的不对了

               bt = '(bat).(bet).(bit)'
               m = re.match(bt, 'batmbetubit')
               if m is not None:
                result = m.group(3)
                print(result)

              接下来一起看下 search

               bt = 'bit'
               m = re.search(bt, 'hfgkfkjbit')
               if m is not None:
                result = m.group()
                print(result)

              re中的search这个方法的就可?#28304;?#19968;整句中查询是否包含需要的部分,而不仅仅的是查找开头有没有

               a = "123abc456"
               print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(0))  # 123abc456,返回整体
               print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(1) ) # 123
               print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(2)) # abc
               print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(3))  # 456
               print("-"*50)
               m = "(bet)...(bat)"
               result = re.search(m, "betljhbat")
               print(result.group(0))  # 返回整体
               print(result.group(1))  # 返回bet
               print(result.group(2))  # 返回bat

              总的来说 match和search的功能绝大部分是相同的,不同的部分在于search是在整体搜索,而match是从开始搜索,其他部?#21482;?#26412;相同

              上面的例子要注意理解group这个,group是分组的意思,正则里面的小括号表示获取当前的值并返回成元组通过group来获取,一般第一个元素是整体元素也就是整个字符串

              点击复制链接 与好友分享!回本站首页
              上一篇:python库下使用pandas的实例教程
              下一篇:Python格式化字符串的操作实例讲解
              相关文章
              图文推荐
              点击排行

              关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

              版权所有: 红黑联盟--致力于做实用的IT技术学习网站

              极速飞艇好假
              <dl id="opymh"></dl>

              <div id="opymh"></div>
                  <div id="opymh"><tr id="opymh"></tr></div>

                    <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

                    <em id="opymh"></em>

                    <em id="opymh"><ol id="opymh"></ol></em>

                          <dl id="opymh"></dl>

                          <div id="opymh"></div>
                              <div id="opymh"><tr id="opymh"></tr></div>

                                <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

                                <em id="opymh"></em>

                                <em id="opymh"><ol id="opymh"></ol></em>

                                      上海时时乐怎么更新 四川省快乐12开奖结果 六合图库彩图下载平台 2024期南国彩票论坛 ag真人视讯 广东彩票软件 足彩分析app 河北时时彩平台哪个好 黑龙江时时彩最近700期 32张小牌九怎么玩 浙江20选5开奖结果查询今天 年月日特码资料 湖北快3分布图 排列五七星彩开奖直播 搜狐彩票nba