[英]Python (django) regular expression does not work
我有這樣的表達:
^[0-9()|&~ ]*$
它應該通過如下字符串: '1 & 2 & 3'
或'(4&1)|(2&3)'
但是當我輸入 string: '1 & 2iuasjhdawiudjsa'
時,它會傳遞這個字符串。 然后我得到一個錯誤:“名稱'Trueiuasjhdawiudjsa'未定義”。
怎么了? 為什么 validators.RegexValidator 不會引發異常?
請幫忙!
在第三個驗證器中失敗。 如果我刪除了第 3 個驗證器,那么 RegexValidator 會引發錯誤,這是應該的。
expression = models.CharField(
blank=True, max_length=225,
validators=[validators.RegexValidator('^[0-9()|&~ ]*$'),
validate_logical_expression,
check_logic_operation_positions] # fails here, when try to
# check logic
]
)
解決這個問題:
def check_logic_operation_positions( ...):
try:
...
except NameError:
raise ValueError(_('invalid name'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.