尝试在使用 Formatter 创建的字符串上使用 String.split() 正则表达式
大家好,我是这里的新人,
我正在使用开源库(Matrix Toolkits for Java)中的以下代码,它输出以下矩阵
1000 1000 5
3 5 1.000000000000e+00
我正在尝试进行字符串分割,它将返回我 1000,1000,5
我尝试使用String[] parts = str.trim().split("\\s");
但似乎使用 \s 作为字符串令牌是错误的,知道我应该使用什么吗?
多谢!
public String toString() {
// Output into coordinate format. Indices start from 1 instead of 0
Formatter out = new Formatter();
out.format("%10d %10d %19d\n", numRows, numColumns, Matrices
.cardinality(this));
for (MatrixEntry e : this)
if (e.get() != 0)
out.format("%10d %10d % .12e\n", e.row() + 1, e.column() + 1, e
.get());
return out.toString();
}
Hi All I am a newcomer here,
I am using the following code from an open source library (Matrix Toolkits for Java) which outputs the following matrix
1000 1000 5
3 5 1.000000000000e+00
I am trying to do a String split that will return me 1000,1000,5
I tried using String[] parts = str.trim().split("\\s");
but it seems using the \s as a String Token is wrong, any idea what I should use instead?
thanks a lot!
public String toString() {
// Output into coordinate format. Indices start from 1 instead of 0
Formatter out = new Formatter();
out.format("%10d %10d %19d\n", numRows, numColumns, Matrices
.cardinality(this));
for (MatrixEntry e : this)
if (e.get() != 0)
out.format("%10d %10d % .12e\n", e.row() + 1, e.column() + 1, e
.get());
return out.toString();
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您应该分割任意数量的空格,而不仅仅是单个空格。 也就是说,将“+”添加到您的正则表达式中,如下所示:
You should split on any number of spaces, not just single ones. That is, add "+" to your regexp like this:
StringTokenizer 也应该能够做你想做的事。
StringTokenizer should also be able to do what you want.