text='POLO1.4自动舒适  标准价121000元  现价111600元  降幅9400元  预计再降400元  桑塔纳3000手动标准型  标准价118000元  现价107000元  降幅11000元  预计再降1000元  爱丽舍自动天窗型 标准价122800元  现价109600元  降幅13200元  预计再降400元  凯越1.6手动舒适  标准价117800元  现价107600元 降幅10200元  预计再降400元’

编程实现,提取出text文本中所有的价格。
此题目采用python正则表达式快速解决。

import re
text='''POLO1.4自动舒适  标准价121000元  现价111600元  降幅9400元  
预计再降400元  桑塔纳3000手动标准型  标准价118000元  现价107000元 
降幅11000元  预计再降1000元  爱丽舍自动天窗型  标准价122800元  
现价109600元  降幅13200元  预计再降400元  凯越1.6手动舒适
标准价117800元  现价107600元 降幅10200元  预计再降400元'''
p=re.compile('\d+元')
list1=p.findall(text)
print(list1)

运行结果
[‘121000元’, ‘111600元’, ‘9400元’, ‘400元’, ‘118000元’, ‘107000元’, ‘11000元’, ‘1000元’, ‘122800元’, ‘109600元’, ‘13200元’, ‘400元’, ‘117800元’, ‘107600元’, ‘10200元’, ‘400元’]


编译正则表达式创建对象

正则表达式(RegularExpression)通常被简称为REs或regexes。是一些由字符和特殊符号组成的规则字符串。因此能按某种模式匹配一个有相似特征的字符串的集合,也能按某模式匹配一系列有相似特征的字符串。

Python自带一个正则表达式模块(re模块),通过这个模块可以查找、提取、替换一段有规律的信息。

使用正则表达式基本步骤:

寻找规律——用正则符号表示规律——依据规律提取信息

对象=re.compile(pattern[, flag])

pattern:正则表达式,flag:匹配模式

findall:遍历匹配,可以获取字符串中所有匹配的字符串,返回一个列表。即能够以列表的形式返回所有满足要求的字符串。findall的函数使用方法:

re.findall(pattern, string[,flags=0])

该匹配是从左到右有序地返回。如果无匹配,返回空列表。

使用正则表达式时,常常用到一些特定的字符类,字符集合,数字集合等等,可以使用预定义字符集的缩写形式。


正则表达式预定义字符类匹配

使用正则表达式时,常常用到一些特定的字符类,字符集合,数字集合等等,可以使用预定义字符集的缩写形式。

\d 匹配任何十进制数,它相当于类 [0-9]

\D 匹配任何非数字字符,它相当于类[^0-9]

\s 匹配任何空白字符,它相当于类[\t\n\r\f\v]

\S匹配任何非空白字符,它相当于类[^\t\n\r\f\v]

\w匹配任何字母数字字符,它相当于类[a-zA-Z0-9_]

\W匹配任何非字母数字字符,它相当于类[^a-zA-Z0-9_]

正则表达式重复限定匹配


pattern*: 允许pattern模式重复0次或多次。

pattern?: 允许pattern模式重复0次或1次。

pattern+: 允许pattern模式重复1次或多次。

pattern{m,n}: 允许pattern模式重复m~n次。

pattern{m,}: 允许pattern模式至少重复m次。

pattern{m}: 允许pattern模式重复m次。

python正则表达式(关于提取数字)相关推荐

  1. python正则表达式大全(常用数字、字符、常用的需求包括手机号、邮箱、电话号码、身份证号等)

    一.正则表达式基础字符代表的意思 \w 匹配所有的字母 \W 匹配所有非字母 \d 匹配所有的数字 \D 匹配所有非数字 \s 空格 \S 匹配所有非空格 . 任意除换行符(\n) \. 表示点符号, ...

  2. python正则表达式\d 匹配数字\D 匹配非数字\w 匹配单词\W 匹配非单词字符

    一个\d代表一个数字.开头没匹配到,即使字符串其他部分包含需要匹配的内容,.match也会返回none import re a = re.match('\d\d','23es12testasdtest ...

  3. python正则表达式提取数字比较好_python正则表达式从字符串中提取数字的思路详解...

    python从字符串中提取数字 使用正则表达式,用法如下: ## 总结 ## ^ 匹配字符串的开始. ## $ 匹配字符串的结尾. ## \b 匹配一个单词的边界. ## \d 匹配任意数字. ## ...

  4. 正则匹配——python用一个正则表达式从字符串中提取数字(包括整数、小数、正负数)

    import re# 从字符串中提取数字 totalCount = '-100,abc2.4-123s,d-1ds-0.234as123.2s1.3bb.24' count = re.findall( ...

  5. python excel怎么将字母后的数字取出来_Excel提取数字、字母、汉字,靠Python一个公式搞定...

    小伙伴们大家好,今天给大家介绍一个自定义函数,可以用来提取文本中的数字.汉字和字母,话不多说,让我们一起看下效果. 功能讲解 上图中,通过自定义一个函数"tiqu",它一共有两个参 ...

  6. python re正则提取ip地址_python 正则表达式匹配IP地址

    一.实验环境 1.Windows7x64_SP1 2.anaconda2.5.0 + python2.7(anaconda集成,不需单独安装) 3.pyinstaller3.0 二.实验目的 从tex ...

  7. python 正则之提取字符串中的汉字,数字,字母

    python 正则之提取字符串中的汉字,数字,字母 #\d 匹配一个数字字符.等价于 [0-9] #\D 匹配一个非数字字符.等价于 [^0-9]#过滤字符串中的英文与符号,保留汉字 import r ...

  8. python 从字符串中提取数字 re.findall()

    以前老用(.*?)提取数字,今天发现不对了,比如一行数字为: 0 0.248438 0.255556 0.128125 0.194444 用: re.findall('(.*?) (.*?) (.*? ...

  9. javascript 正则表达式提取数字使用

    javascript 正则表达式提取数字使用 知识点: JavaScript RegExp 对象 RegExp 对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 直接量语法 ...

最新文章

  1. Java8新特性学习记录
  2. Linux2.6--虚拟文件系统
  3. 处理顶点——使用索引移除冗余顶点
  4. Java内存模型、volatile、原子性、可见性、有序性、happens-before原则
  5. K8S 部署 ingress-nginx (三) 启用 https
  6. HDU1016 Prime Ring Problem dfs+回溯
  7. J2SE理解之一:声明和访问控制
  8. bootstrap在ie8下,兼容媒体查询
  9. ASP.NET MVC 拦截器(转)
  10. Andorid学习笔记(ADT)-LogCat日志调试工具
  11. Kubernetes的系统架构与设计理念
  12. 8.6 edu25 ,577#div2 CF补题(二分 ,dp 与 贪心
  13. 综合评价法——秩和比(RSR)
  14. 作为一个开发者,我创业了
  15. java 文档比较功能_java 实现在线比较两个版本的Word文档的功能
  16. Matlab 齐次线性方程组求解举例
  17. [AHK]给PPT插入图片
  18. ABAP clear、refresh、free的区别
  19. 5G和MEC在工业互联网中的应用探讨
  20. JDBC--藤原豆腐店自用

热门文章

  1. redirect(重定向)和forward(转发)的区别
  2. 什么是HTTP代理池,如何搭建代理IP池?
  3. html和java开发哪个难,html5和java哪个难
  4. IPTV桌面系统建设物料和费用:服务器+软件+电视盒
  5. MySQL之建表时[Err] 1050 - Table ‘users‘ already exists异常解决方法
  6. 比bitblt和stretchblt效率更高的函数
  7. CList 动态链表的学习笔记
  8. docekrfile
  9. I3C协议Single Data Rate(SDR)模式研读(一):总线配置Bus Configuration
  10. Springboot 删除指定文件夹或文件(Java删除指定文件夹或文件)