私はこの文字列を持っています:
IMD+F++:::PS4 SAINTS R IV R?+GA'
2段階に分けたいと思います。まず、エスケープされたプラス記号 "?+" を除いて + で分割したいと思います。次に、エスケープされたコロン「?:」を除いて、: で結果を分割します。
次の正規表現を使用すると、文字列を正常に分割できます。
string[] Data = Regex.Split("IMD+F++:::PS4 SAINTS R IV R?+GA'", @"(?<![\?])[\+]+");
結果:
[0] IMD
[1] F
[2] :::PS4 SAINTS R IV R?+GA'
結果は正しくありません。配列への 4 つの入力である必要があります。空の結果を削除します。配列にとどまるには、空の結果が必要です。結果は次のようになります。
[0] IMD
[1] F
[2]
[3] :::PS4 SAINTS R IV R?+GA'
なぜこのように振る舞うのか誰にも分かりますか?助言がありますか?