頭字語スプリッターを作ろうとしています。アイデアは、文字列「United States of America」を入力すると、「United」、「States of」、「America」の 3 つの文字列の配列が返されるということです。
次に、最初の文字を太字にして縦に並べて表示します。
ユナイテッド_
州_
アメリカ_
これを行う良い方法は何ですか?ある種の分割と、「of、a、if、then」など、除外する一般的な単語を含む文字列配列が含まれていると思います...
そのためにそのような正規表現を使用します:
Regex.Split(str, " (?!of|a|if)");
ライブデモ: http://ideone.com/KdQnfZ
コミュニティがコメントで提案しているように、次のような大文字で始まる単語が続くスペースで区切ることができます
Regex.Split(str, " (?=[A-Z])")
正規表現を使用できる場合([a-zA-Z]+ ?(of|in|and)?)
、内側のグループ (in と one) にすべての例外単語が入力されている限り、次のような式が機能します。