[英]How to check if a string is a valid regex in Python?
在 Java 中,我可以使用以下函數來檢查字符串是否是有效的正則表達式 ( source ):
boolean isRegex;
try {
Pattern.compile(input);
isRegex = true;
} catch (PatternSyntaxException e) {
isRegex = false;
}
是否有 Python 等效的Pattern.compile()
和PatternSyntaxException
? 如果是,那是什么?
類似於Java。 使用re.error
異常:
import re
try:
re.compile('[')
is_valid = True
except re.error:
is_valid = False
異常
re.error
當傳遞給此處函數之一的字符串不是有效的正則表達式(例如,它可能包含不匹配的括號)或在編譯或匹配期間發生其他一些錯誤時引發異常。 如果字符串不包含與模式匹配的內容,則永遠不會出錯。
編寫相同答案的另一種奇特方式:
import re
try:
print(bool(re.compile(input())))
except re.error:
print('False')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.