3

C# を使用して、正規表現を使用して引用符内のスペースをパイプ文字 (|) に置き換えるコードが必要です。問題は、文字列に複数の引用符で囲まれた式が含まれる可能性があり、引用符内のスペースのみが必要なことです。

私はいくつかのことを試しましたが、特に引用符内にある可能性のある可変数の単語を処理する方法に苦労しています.

入力できる内容と必要な出力の例を次に示します。

"word1 word2"
-> "word1|word2"

"word1 word2" word3 "word4 word5"
-> "word1|word2" word3 "word4|word5"

単語1 "単語2 単語3"
-> 単語1 "単語2|単語3"

どんな助けでも大歓迎です。うまくいけば、正規表現について学びます。

4

2 に答える 2

8

正規表現を使用して引用符を見つけ、プレーンな Replace を使用してスペースを置き換えます。

str = Regex.Replace(str, @"""[^""]+""", m => m.Value.Replace(' ', '|'));
于 2012-06-22T01:11:30.243 に答える
0

このようなものをテストするのに役立つ webiste があります。reFiddle と呼ばれます。

http://refiddle.com

私がすることは、これを使用することです

http://refiddle.com/288

/["][^"]+["]/g

引用符で囲まれた文字列を取得するには、返された文字列を置き換えるだけで、ゴールデンになるはずです。

于 2012-06-22T01:17:05.177 に答える