0

さて、私はグーグルとこのサイト全体を検索しましたが、この問題に対して私が望む方法で機能する解決策を見つけられませんでした. たとえば、「javaRegexConfusion」などの文字列を保持しながら、大文字で分割したい場合があります。ここでの問題は、大文字で直接分割する場合、ある方法では文字がまったくないままになり、私が知っている別の方法では、それらを配列上の独自のオブジェクトに分割することです。上記の文字列の結果は、「java」、「Regex」、および「Confusion」で構成される配列です。どうすればいいのか全くわかりません。解決策は非常に簡単だと確信していますが、探しているものをどのように表現すればよいかわかりません。そのため、紛らわしいタイトルになっています。

編集:完全にトピック外のクエストで答えを見つけました. 私は受け入れられた正規表現にあまり精通しておらず、決して理解できなかったでしょう

私はAlexWienの答えが好きですが、この方法を好みます。反復して大文字があった場所で分割する代わりに、他の回答の作成者は、大文字の直前で分割しました。

String[] output = input.split("(?=(?!^)[A-Z])");

私はこの方法が本当に好きで、これからもおそらくこれを使用するでしょう("(?=(?!^)[A-Z])")見ないと思い出せないのは残念です)

4

1 に答える 1

0

char が見つかった場合は、文字列を 1 文字ずつ反復処理isUpperCase()し、結果の文字列配列にコピーします。現在の位置を保存し、続行します..

使用する

Character.isUpperCase(s.charAt(pos))
于 2013-01-13T01:49:57.783 に答える