它有點推動邊緣,但我有以下情況與此正則表達式 - 「()」:當用於將字符串拆分爲字符串[ ]數組,結果對我來說有點奇怪。例如,這行代碼:正則表達式與一個空組「()」返回奇怪的結果
string[] res = new Regex("()").Split("hi!");
套res
到的9個元素的陣列(!): 「!」[ 「」, 「」, 「H」, 「」, 「I」, 「」, ,「」,「」]
我期待它返回這5個元素:[「h」,「」,「i」,「」,「!」 ]。 我需要這個特定結果的原因是爲了與另一個正則表達式庫兼容...
我的問題是,這種行爲可能是由於正則表達式對象或一些編碼問題或類似的一些丟失選項...或者它是以某種方式確定的,它絕對是它應該工作的正確方式?另外,是否有辦法強制它返回第二個(預期的)結果呢?
你能否澄清被強迫你使用這樣一個奇怪的正則表達式的兼容性問題? – 2010-01-29 03:54:20
+1一個非常有趣的,如果可能無用的問題! – 2010-01-29 03:57:16
我正在深入研究的原因是爲了使它與Ruby正則表達式的工作方式兼容,特別是使IronRuby的規範之一通過。看來雖然在.NET中的實現更加正確... – 2010-02-01 00:04:13