-2
import java.util.regex.*;

public class Splitter {
    public static void main(String[] args) throws Exception {
        Pattern p = Pattern.compile("[,\\s]+");
        String[] results = p.split("one,two, three   four ,  five");
        for (String result : results) {
            System.out.println(result);
        }
    }
}

スプリッターは、コンマまたは空白、あるいはそれらの任意の数の組み合わせです。正規表現は[,\s]+。例に余分な円記号があったのはなぜですか?

4

1 に答える 1

5

余分な\ものは、次のバックスラッシュをエスケープすることです。どのJava文字列でも。"\\"を意味し"\"ます。

これは、'\'が特殊文字であるためです。あなたは"\n"改行を意味するために使用されるのを見たに違いありませんか?したがって、リテラル\を文字列に入れるには、を使用します"\\"

たとえば、を試してくださいSystem.out.println("Here\'s a backslash : \\")

これは印刷されます: Here's a backslash : \

于 2012-05-20T23:34:58.863 に答える