文字列とその数字に分割する必要があります。表示される文字列は、文字列内の文字と数字を分割する
"dir1" "path11"
のいずれかの値に一時的に格納する必要があります。私は.splitメソッドを見つけましたが、それは私の後ろにあるかもしれないように見えますが、私はそれを調べ続けるべきか、それとも良い方法があるのでしょうか?
文字列とその数字に分割する必要があります。表示される文字列は、文字列内の文字と数字を分割する
"dir1" "path11"
のいずれかの値に一時的に格納する必要があります。私は.splitメソッドを見つけましたが、それは私の後ろにあるかもしれないように見えますが、私はそれを調べ続けるべきか、それとも良い方法があるのでしょうか?
正規表現とスプリットはそれを行うのを助けることができる:
public static void main(String[] args) {
String[] c = "path11".split("(?<=\\D)(?=\\d)|(?<=\\d)(?=\\D)");
System.out.println(Arrays.toString(c));
}
出力=
[パス]、[11]
利用のstring.Split()
String[] strings = "abc111".split("(?=\\d+)(?<=\\D+)");
にsplit()
関数は、文字列が分割されるの周りに正規表現を取るよう。
パターンには2つのアサーションがあります.1つは前方の文字が数字だけであり、もう1つは前の文字が非数字であることを主張します。したがって、数字の終わりの直後(数字の冒頭の直前)に分割されます。
は常に数字が続く**アルファベット文字の文字列です* *? –
この場合、彼らは –
になりますここに似たような解決策がありますhttp://stackoverflow.com/questions/8270784/how-to-split-a-string-between-letters-and-digits-or-between-digits- and-lettersまたはhttp://stackoverflow.com/questions/16787099/how-to-split-the-string-into-string-and-integer-in-java – dkb