0

C# について簡単な質問があります。基本的には、文字列 (空白なし) を大文字に基づいて単語に分割したいと考えています。

文字列「MenInBlack」があるとします。それを「Men」、「In」、「Black」に分割したいとします。

私は試しRegex.Splitましたが、私の目的ではありませんが、以下のコードサンプルを試しました:

string[] word = Regex.Split(a, @"[A-Z]",RegexOptions.Compiled);

Splitメソッドは分割条件を除外するようで、「en」、「n」、「lack」しか得られません。

上記を解決する方法はありますか?

よろしくお願いします。

4

1 に答える 1

3

分割しないで検索してください。分割とは、区切り文字、つまり、トークンを互いに分離するトークンの一部ではないものがあることを意味します。

検索するだけ[A-Z][a-z]+

var regex = new Regex(@"([A-Z][a-z]*)");
var matches = regex.Matches(searchString);
于 2012-05-24T07:39:42.980 に答える