我有一堆字符串,但我只想保留这种格式的字符串:
x/x/xxxx xx:xx
检查字符串是否符合这种格式的最简单方法是什么?(假设我想检查它是否有 2 个 / 和一个 ':' )
我有一堆字符串,但我只想保留这种格式的字符串:
x/x/xxxx xx:xx
检查字符串是否符合这种格式的最简单方法是什么?(假设我想检查它是否有 2 个 / 和一个 ':' )
尝试正则表达式:
import re
r = re.compile('.*/.*/.*:.*')
if r.match('x/x/xxxx xx:xx') is not None:
print 'matches'
您可以调整表达式以满足您的需求
使用time.strptime从字符串解析到时间结构。如果字符串与它引发的格式不匹配ValueError
。
如果您将正则表达式与 match 一起使用,您还必须考虑结尾太长。如果不测试此代码中的长度,则可以在末尾滑动任何非换行符。这是从其他答案修改的代码。
import re
r = re.compile('././.{4} .{2}:.{2}')
s = 'x/x/xxxx xx:xx'
if len(s) == 14:
if r.match(s):
print 'matches'