【发布时间】:2012-05-02 18:09:08
【问题描述】:
我已经搜索了很多关于正则表达式的内容,最后我发现最好使用“\\s+”来分割字符串
但令人惊讶的是它对原始字符串没有任何影响:
private static void process(String command) {
command = command.substring(0, command.length() - 1);
String[] splitted = command.split("\\s+");
for (String str : splitted) {
System.out.println(str);
}
}
样本输入:
Boolean b = new Boolean(true);
首选输出:
[Boolean,b,=,new,Boolean(true)]
但我的方法输出是:
Boolean b = new Boolean(true)
【问题讨论】:
-
你有什么问题?您对该方法的输入、预期输出和实际输出是多少?
-
如果你想在命令行中解析参数,检查commons.apache.org/cli
-
我使用子字符串来删除 ';'来自我的字符串
-
@Andrew Thompson:它会删除最后一个字符,但我的问题不存在!
-
-1 关于这个问题。代码和示例输出不匹配。这就是说@Tim Pote 已经给出了你需要的答案。
标签: java regex split whitespace