【发布时间】:2013-01-07 22:50:23
【问题描述】:
所以我在我的一个程序中编写了一小段代码,该程序使用 split 方法来解析和排序字符串中包含的各个组件。以下是代码示例:
String[] sArray;
String delimiter = "*";
String test = "TEXT*TEXT*TEXT*";
String a = "";
String b = "";
String c = "";
sArray= test.split(delimiter);
a = sArray[0];
b = sArray[1];
c = sArray[2];
System.out.println("A is: " + a + "\nB is: " + b + "\nC is: " + c);
但是,当我运行这个程序时,它会返回一个错误,指出:
Dangling meta character '*' near index 0
所以我用谷歌搜索了这个错误,发现它可能与* 在正则表达式中如何被视为通配符的问题有关。所以我尝试了:
String delimiter = "\*"
但这只是返回另一个错误说明:
illegal escape character
之前有没有人遇到过这个问题,或者知道你是如何(如果你是)应该在 java 中逃避*?
【问题讨论】:
-
注意(2018 年 1 月),Java(JDK 10 或更高版本)可能会出现原始字符串文字:请参阅 In Java, is there a way to write a string literal without having to escape quotes?。
标签: java string split escaping wildcard