0

重複の可能性:
単語を含まない文字列に一致する正規表現?

私が使用する一連の文字と一致しないようにするには、たとえば[^\"\\r\\n]*

「|=」などの固定文字セットに一致させたくない

つまり、一致させたい: ( "、\r、\n、|= ではない)。

編集:区切り記号で区切られたデータを解析するための正規表現を変更しようとしています。CSV パーサーから取得した単一区切り記号のソリューションですが、複数文字の区切り記号を含めるように拡張したいと考えています。一致する文字をアサートして破棄するだけでなく、消費したいので、先読みは機能しないと思います。

4

1 に答える 1

0

私はそれを理解しました、それは次のようになるはずです:((?![\"\\r\\n]|[|][=]).)*

元の投稿の CSV パーサー リンクから変更された完全な正規表現は次のようになります。((?<field>((?![\"\\r\\n]|[|][=]).)*)|\"(?<field>([^\"]|\"\")*)\")([|][=]|(?<rowbreak>\\r\\n|\\n|$))

これは、任意の数の文字 ( "、\r、\n、および |= ではない)、または引用符で囲まれた文字列の後に ( "|=" または行末) が続くものと一致します。

于 2010-06-30T12:45:09.433 に答える