python,用正则表达式匹配特定汉字

待测试字符串有:“5元起,每小时1元”“10起每小时5元”“价格200起每分钟加5”,等等其中起步价格式为:一个数字+(元)+起,即可能有“元”也可能没有“元”需要把起步... 待测试字符串有:
“5元起,每小时1元”
“10起每小时5元”
“价格200起每分钟加5”,等等
其中起步价格式为:一个数字+(元)+起,即可能有“元”也可能没有“元”
需要把起步价全部筛出来。
谁知道正则怎么写?帮我改一下下面的代码吧,本人新手,谢谢谢谢!!
import re
#describtion="5元起,每小时1元"
#describtion="10起每小时5元"
describtion="价格200起每分钟加5"
pattern1 = re.compile(r'[0-9][0-9]{0,10}[元]?起')
match=pattern1.findall(describtion)

期望得到:
“5元起”
“10起”
“200起”
展开
 我来答
l7722526
2018-04-30 · TA获得超过2.7万个赞
知道大有可为答主
回答量:2.8万
采纳率:84%
帮助的人:3760万
展开全部
在Python的string前面加上‘r’, 是为了告诉编译器这个string是个raw string,不要转意backslash '\' 。 例如,\n 在raw string中,是两个字符,\和n, 而不会转意为换行符。由于正则表达式和 \ 会有冲突,因此,当一个字符串使用了正则表达式后,最好在前面加上'r'。
在[]中
-长用来指定一个字符集,在这个字符集中的一个可以拿来匹配:[abc] [a-z]
-元字符在在字符集中不起作用
-在[]内用^表示补集,用来匹配不在区间范围内的字符
s=r'aba' 匹配abc
s=r't[io]p' 匹配tip或者top
s=r't[a-z0-9A-Z]'匹配t+0-9或者a-z或者A-Z
[abc]表示“a”或“b”或“c”
[0-9]表示0~9中任意一个数字,等价于[0123456789]
[\u4e00-\u9fa5]表示任意一个汉字
[^a1<]表示除“a”、“1”、“<”外的其它任意一个字符
[^a-z]表示除小写字母外的任意一个字符
梦呓罒幻羽
2018-04-30 · TA获得超过106个赞
知道答主
回答量:88
采纳率:75%
帮助的人:23.2万
展开全部
import re
str=re.findall("\d.?起",description)

这样应该就可以了吧,没试过中文的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式