java - 如何在带有单词和整数的字符串中的数字之间添加空格?

标签 java string integer space

有这样的字符串

"APM35 2FAST4YOU -5ABBA STEVE0.5&Tom"

并且使用正则表达式我没有得到我想要的结果。如何在每个整数之前和之后添加空格? 代码:

String s = "APM35 2FAST4YOU -5ABBA STEVE0.5&Tom";
s = s.replaceAll("(\\d)([A-Za-z])", "\\1 \\2");
System.out.println(s);

我得到这样的结果:

APM35 1 2AST1 2OU -1 2BBA STEVE0.5&Tom

我想得到这个字符串作为结果:

APM 35 2 FAST 4 YOU -5 ABBA STEVE 0.5 &Tom

最佳答案

您可以分两步完成:

String s = "APM35 2FAST4YOU -5ABBA STEVE0.5&Tom";
//add a space after the numbers
String step1 = s.replaceAll("(-?\\d\\.?\\d*)([^\\d\\s])", "$1 $2");
//add a space before the numbers
String step2 = step1.replaceAll("([^0-9\\-\\s])(-?\\d\\.?\\d*)", "$1 $2");

关于java - 如何在带有单词和整数的字符串中的数字之间添加空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16839370/

相关文章:

c# - 如何从负整数中减去但添加到正整数?

ruby - 在 Ruby 中有效地存储/压缩整数数组?

java - android - 重置后按按钮上的进度条

java - JAX-RS @POST 语法

java - java : email with pdf attached file : no object DCH for MIME type application/pdf

java - 如何替换字符串中一定数量的空格之后出现的子字符串?

java - 如何让Apache托管的公共(public)网页访问同一网络上的私有(private) Node 服务器?

python - 海峡列表列表

c++ - 如何在字符串中添加整数?

c# - 生成所有满足特定条件的数字