在Python之後找到乏味的Java。試圖解析一些base64連接的數據。簡單的Java正則表達式
如何在一個或多個等號'='上分割一個簡單字符串?
這個簡單的正則表達式有什麼問題? (它是Jython引擎蓋下的Java代碼庫)
>>> s = "hello=world"
>>> s.split("=+")
['hello=world']
>>> s.split("=*")
['hello=world']
>>> s.split("=")
['hello', 'world']
在Python之後找到乏味的Java。試圖解析一些base64連接的數據。簡單的Java正則表達式
如何在一個或多個等號'='上分割一個簡單字符串?
這個簡單的正則表達式有什麼問題? (它是Jython引擎蓋下的Java代碼庫)
>>> s = "hello=world"
>>> s.split("=+")
['hello=world']
>>> s.split("=*")
['hello=world']
>>> s.split("=")
['hello', 'world']
有趣的問題!
您的代碼是用於分割的有效Java語法。
但
您正在使用的Jython和Jython的字符串不是一個正則表達式string.split()
分裂。
您需要使用Jython re.split
來拆分字符串。
甜,我會堅持純Java我猜。 Jython對於複雜的Java測試非常好,儘管:( – drew
不是你讀過這個問題嗎? '我如何在一個或多個equals上分割一個簡單的字符串'='?'它將Base64編碼連接起來,因此提供1 .. *'='字符。 – drew
@drew我編輯了我的答案,你有正則表達式作爲你的標籤soooo大聲笑 – progrenhard
與Jython的只是一個問題。 FYI
輸入
decryptKeySplits("Testing=hello");
decryptKeySplits("Testing====hello");
decryptKeySplits("Testing=hello==");
decryptKeySplits("Testing=hello=this=it");
結果
2
2
2
4
這是不可能的,你想要的方式。用正則表達式,你只有**一個**模式。那個模式必須匹配。無論您使用*,+還是以往任何方式。 – Gerret
什麼????????????????????????提供一個開始字符串以及你想要分析的東西,這樣我們可以提供幫助。 – progrenhard
不知道爲什麼你會得到這些結果,但是split(「= +」)'在純Java中工作正常。 – Pshemo