python 怎么取出字符串中的数字子串?

我现在有一个字符串str="发表于:2013-06-04",我想取出这里面的时间。str1="-".join(list(filter(str.isdigit,str)))... 我现在有一个字符串str="发表于:2013-06-04",我想取出这里面的时间。
str1="-".join(list(filter(str.isdigit,str)))

但是这样写有错误:TypeError: isdigit() takes no arguments (1 given)
不知道为什么出错?
或者有没有什么别的方法?
展开
 我来答
陈老师567
推荐于2016-05-29 · TA获得超过161个赞
知道小有建树答主
回答量:288
采纳率:100%
帮助的人:133万
展开全部
没分..很简单 (python2.7)
s = "发表于:2013-06-04"
# 我猜你的方法是
filter(str.isalnum,s)
# result '20130604'
更多追问追答
追问
谢谢你,我按照你的例子写的,还是有错误:TypeError: isalnum() takes no arguments (1 given)
追答
和我这是一摸一样吗?

s = "发表于:2013-06-04" # 这个变量名一定不能是str

filter(str.isalnum,s) # 这个str.isalnum,一定要是str,后面是s
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
起事李0p
推荐于2017-07-03 · TA获得超过117个赞
知道答主
回答量:31
采纳率:0%
帮助的人:27.4万
展开全部
要提取时间的话,用正则表达式吧
更多追问追答
追问
我想把2013-06-04匹配出来,不知道正则怎么写啊
追答
考虑最简单的情况:

>>> import re
>>> s="发表于:2013-06-04"
>>> p=re.findall(r"\d\d\d\d-\d\d-\d\d",s)
>>> p
['2013-06-04']
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
看咯英语
2015-10-09 · TA获得超过630个赞
知道小有建树答主
回答量:151
采纳率:0%
帮助的人:92.6万
展开全部
使用正则表达式,过滤
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
随风飘扬201204
2017-06-28 · TA获得超过294个赞
知道小有建树答主
回答量:363
采纳率:67%
帮助的人:57.1万
展开全部
我猜你是爬虫爬取到的吧,用分割比较方便,用split分割:,就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我心我在
2017-07-03 · TA获得超过2157个赞
知道小有建树答主
回答量:784
采纳率:77%
帮助的人:628万
展开全部
#!/usr/bin/env python
# -*- coding: utf-8 -*-
str="发表于:2013-06-04"
import re
print re.search(r'\d{4}-\d{2}-\d{2}', str).group(0)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式