我正在尝试使用Pydantic编写验证器来验证以下字符串(示例):
1.1.0, 3.5.6, 1.1.2
等。
我在以下语法上失败了:
install_component_version: constr(regex=r"^[0-9]+.[0-9]+.[0-9]$")
install_component_version: constr(regex=r"^([0-9])+.([0-9])+.([0-9])$")
install_component_version: constr(regex=r"^([0-9])\.([0-9])\.([0-9])$")
有人能帮我看一下正则表达式的语法应该是什么样子的吗?
r'^(\d+\.){2}\d+$'
应该可以工作吗? - SUTerliakov无效的类型注释或注解 [valid-type] 注意:建议使用 constr[...] 而不是 constr(...)
- Maciejinstall_component_version: str = Field(regex=r"^[0-9]+.[0-9]+.[0-9]$")
的东西,错误与正则表达式无关,而是与类型注释有关。如果我正确理解问题,您可以通过使用Field
来解决这个问题,正则表达式需要您自己解决。 - python_user