0

次の形式の文字列があります。

CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM

StringTokenizer を使用できますString.split("~#$~")か、または使用する必要がありますか? 上記の文字列には2つのパラメーターしかありません。そのため、 String.Split("~#$~") を使用しようとしていましたが、機能していないようです。

4

5 に答える 5

7

$正規表現の特殊文字です(「行末」を意味します)。単純なリテラルにするには、次のようにエスケープする必要があります

  • "\\$"
  • "[$]"
  • または引用を使用します"\\Q$\\E"
于 2012-10-16T18:36:12.037 に答える
1

split()method は としてパラメーターを取り、 のRegex特別$なメタキャラクターであるためRegex。記号をエスケープする必要があります$: -

    System.out.println(str.split("~#\\$~")[0]);
    System.out.println(str.split("~#\\$~")[1]);
于 2012-10-16T18:36:24.837 に答える
0

String.split() を使用してこれを行うことができます。StringTokenizer を使用する必要はありません。以下の例を参照してください。

String s="CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";
        String test[]=s.split("\\~\\#\\$\\~");
        System.out.println(test[0]);
        System.out.println(test[1]);

ご不明な点がございましたらお知らせください。

于 2012-10-16T18:59:48.690 に答える
0

試す

String s = "CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";

Arrays.toString(s.split("~#\\$~"))
于 2012-10-16T18:36:37.260 に答える
0
String str = "CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";
String[] pieces = str.split("~#\\$~");
于 2012-10-16T18:36:52.327 に答える