我在我的智慧結束(是一個正則表達式新手)。我需要拆分的字符串這樣正則表達式分割字符串
"abc","","av,as","hello world","nice,name"
到
'abc'
'\blank\'
'av,as'
'hello world'
'nice,name'
使用C#或excel vbs的,可以有人用正則表達式表達幫助嗎?
我在我的智慧結束(是一個正則表達式新手)。我需要拆分的字符串這樣正則表達式分割字符串
"abc","","av,as","hello world","nice,name"
到
'abc'
'\blank\'
'av,as'
'hello world'
'nice,name'
使用C#或excel vbs的,可以有人用正則表達式表達幫助嗎?
相當簡單:如圖所示
"(\\.|[^"\\])*"
將工作:
它將允許轉義引號和報價之間可能存在的空白,並且是符合POSIX標準,應你永遠需要那個!
編輯
我也許應該注意,基本上不會有可能得到'\blank\'
你從正則表達式引擎指定直接,但會比較瑣碎從代碼中得到它來檢查的如果是少於三個字符長(如匹配,將""
如果有一個空字符串)
END EDIT
匹配的長度和替換它10請問你是否想讓我分解這個表情!
+1 - 看起來像處理所有情況。 –
完美的解決方案。工作得很好。謝謝。 –
不會找到轉義引號,也不會忽略內部逗號。 –
大多數作品,但如傑西所說,並不完全是愚蠢的。但謝謝你的答案。 –
(?:"((?:[a-z])+(?:[ ,a-z]+))")?("")?
可用於
如果組1和2 emtpy,則相匹配的,
如果組1有一個值匹配一個字符串,並且組2有一個值你匹配emtpy雙引號""
但是,是爲說,你應該使用速度與精確度分析器...
這看起來像是在嘗試使用CSV文檔。我建議爲此使用一個庫(參見http://secretgeek.net/csv_trouble.asp) –
您遇到問題。 「我將用正則表達式來解決它!」現在你有兩個問題。 – CanSpice
我不認爲正則表達式是這樣的。我會遍歷字符串查找打開和關閉引號。 –