2

次の形式の文字列があります:something~#~something。

基本的に ~#~ を区切り文字として使用していますが、最初の要素のみを残りの要素から分割したいと考えています。

たとえば、次の文字列があるとします: What~#~AGreat~#~Day

最初の試合は「What」、2 番目の試合は「AGreat~#~Day.

私が扱っている実際の文字列は次のようになります: A1~#~@NP->_A1 したがって、それらは英数字に限定されません。誰でも助けることができますか?同様の問題を探してみましたが、うまくいかないようです。

ありがとう!

4

2 に答える 2

3
String first = input.substring(0, input.indexOf("~#~"));
String second = input.substring(input.indexOf("~#~") + 3, input.length());

出力:

first:  What
second: AGreat~#~Day
于 2012-11-18T09:47:29.637 に答える
2

メソッドを使用することもできますsplit(String regex, int limit)。たとえば、このコード

public class Test {
    public static void main(String[] args) {
        String s = "abc.bcd.cde";
        System.out.println(Arrays.toString(s.split("\\.", 2)));
    }
}

次の出力が生成されます。

[abc, bcd.cde]
于 2012-11-18T09:49:13.077 に答える