在Python的If语句中使用re.match

无所不能

我正在Python中设置一个函数,以接收MM / DD / YYYY格式的日期,然后使用正则表达式对其进行验证。这就是我现在所拥有的:

def getdate():
    date = raw_input("Please enter the date completed (MM/DD/YYY): ")
    if re.match(r"\d{2}/\d{2}/\d{4}", date)
        break
    else:
        print "Incorrect date format"
        getdate()

系统不断返回语法错误,该错误指向“ if”行中的小括号。我似乎无法弄清楚它在考虑什么语法错误。我也尝试过此方法,但没有成功:

def getdate():
    date = raw_input("Please enter the date completed (MM/DD/YYY): ")
    valid = "(\d{2}/\d{2}/\d{4})"
    if re.match(valid, date)
        break
    else:
        print "Incorrect date format"
        getdate()

这也会返回相同的错误。

谢谢。

用户2555451

最后需要一个冒号:

if re.match(r"\d{2}/\d{2}/\d{4}", date):
#                               here --^

Python使用冒号结束语句。

同样,如@RohitJain所述,使用递归请求重复输入也是一种不好的做法。您可能需要使代码如下所示:

def getdate():
    date = raw_input("Please enter the date completed (MM/DD/YYY): ")
    valid = "(\d{2}/\d{2}/\d{4})"
    while not re.match(valid, date):
        print "Incorrect date format"
        date = raw_input("Please enter the date completed (MM/DD/YYY): ")
    return date

此新代码使用循环,直到输入满足规范为止(即,re.match返回匹配项)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在VBA的IF语句中,如何在Match语句中的2个部分文本中使用OR语句?

来自分类Dev

在python的re.match中使用变量

来自分类Dev

在python中的re.match中使用变量

来自分类Dev

@在match语句中是什么意思?

来自分类Dev

Regex for Address在Regex 101(Python)中工作,而不是在Python中使用re.match吗?

来自分类Dev

是否可以在OR语句中将INDEX和MATCH与多个条件一起使用?

来自分类Dev

为什么在F#中的match语句中收到“未使用值”警告

来自分类Dev

使用 preg_match 从 create table 语句中获取 SQL 表名

来自分类Dev

在mongodb中使用$ and和$ match

来自分类Dev

聚合。在$ match中使用$ let

来自分类Dev

在Rust中的match语句中解构Option <Box <_ >>

来自分类Dev

条件语句中的!preg_match()函数始终为false

来自分类Dev

Python Match语句:如何使用存储在变量中的值

来自分类Dev

INDEX MATCH 与嵌套的 IF 语句

来自分类Dev

在if语句中使用grep

来自分类Dev

在SQL语句中使用IF

来自分类Dev

在if语句中使用别名

来自分类Dev

在If语句中使用IsError

来自分类Dev

在ifelse语句中使用%in%?

来自分类Dev

在if语句中使用存在

来自分类Dev

在if语句中使用增量

来自分类Dev

在if语句中使用“ href”

来自分类Dev

在IF语句中使用“ LIKE”

来自分类Dev

在 Javascript IF 语句中使用 AND/OR

来自分类Dev

在 case 语句中使用 &&

来自分类Dev

在 IF 语句中使用 AND 的 ARRAYFORMULA

来自分类Dev

在 IF 语句中使用通配符

来自分类Dev

在python条件语句中使用模运算符

来自分类Dev

在Python的Try and Except中的“ if”语句中使用“或”