我想檢查在Java中定義的正則表達式是否對Python有效。如何檢查給定的Java正則表達式在Python中是否有效
但是這兩種語言中的正則表達式並沒有什麼不同。
例如,解析字符點陣(.
)
"\." # Python version
"\\." # Java version
有沒有什麼辦法來檢查Java的正則表達式在Python?
我想檢查在Java中定義的正則表達式是否對Python有效。如何檢查給定的Java正則表達式在Python中是否有效
但是這兩種語言中的正則表達式並沒有什麼不同。
例如,解析字符點陣(.
)
"\." # Python version
"\\." # Java version
有沒有什麼辦法來檢查Java的正則表達式在Python?
正則表達式在java和python中是一樣的。你指出的差異是由於java編譯器處理字符串常量的方式。 反斜槓作爲轉義字符具有特殊含義,因此,要將反斜槓本身包含到字符串文字中,必須重複兩次。因此"\\."
表達一個字符串常量"\."
試試這個:System.out.println(Pattern.compile("\\.").toString());
我認爲你需要在python中像java一樣再次將反斜槓轉義,當正則表達式沒有被定義爲原始字符串時。 – 2014-12-11 03:53:35
你們要檢查這個特定的正則表達式? – 2014-12-11 03:47:33
正則表達式匹配兩種語言中的字面點'[。]' – 2014-12-11 03:52:31
OP不想看到它只是解析點。 – hwnd 2014-12-11 03:56:39