2010-06-30 29 views
0

可能重複:
Regular expression to match string not containing a word?如何編寫正則表達式以匹配不包含單詞的字符串?

爲了不匹配一組字符,我會用如的[^\"\\r\\n]*

現在我想要與固定字符集不匹配,例如「| =」

換句話說,我想匹配。(不是」,而不是用\ r,不是\ n,且不會| =)

編輯:我想修改的正則表達式用於解析用分隔符分隔的數據單分隔符解決方案我得到了a CSV parser,但現在我想擴展它以包含多字符分隔符。我不認爲lookahead將起作用,因爲我想消費,而不僅僅是斷言並丟棄中,匹配字符

+0

@George,這是一個完全重複的?是的,兩者都用負向預測解決,但我需要多個匹配序列。 – 2012-07-27 07:22:07

回答

0

我想通了,它應該是:((?![\"\\r\\n]|[|][=]).)*

從原始文章中的CSV解析器鏈接修改的完整正則表達式將爲:((?<field>((?![\"\\r\\n]|[|][=]).)*)|\"(?<field>([^\"]|\"\")*)\")([|][=]|(?<rowbreak>\\r\\n|\\n|$))

這將匹配任何數量的字符(不是「,不是\ r,不是\ n,而不是| =)或一個帶引號的字符串,後跟(「| =」或行尾)

相關問題