假设我有这样的文字:Thundering Blow I
。我需要的是使它看起来像Thundering Blow
- 删除字符串末尾的罗马数字。
我尝试了trim()
和一些substring()
方法,但他们都继续回复:Thundering Blow I
回到我身边。也许它可以删除字符串I
后的所有内容?也没关系,但我似乎无法找到解决问题的方法。
答案 0 :(得分:5)
String newStr = s.substring(0, s.lastIndexOf(" "));
这是整个代码:
String s = "ThunderingI";
s = s.trim();
int ind = s.lastIndexOf(" ");
if (ind > 0) {
s = s.substring(0, ind).trim();
}
System.out.println(s);
答案 1 :(得分:4)
你需要这个,删除第二个空格后的所有字符
String s = "Thundering Blow I";
int k = s.indexOf(" ", s.indexOf(" ") + 1);
String res = s.substring(0,k);
System.out.println(res);
答案 2 :(得分:2)
您可以拆分字符串,然后连接索引为0和1的新字符串。 最简单的解决方案:)..
String[] tempArray = orgStr.split(" ");
String newStr = tempArray[0] + " " + tempArray[1];
答案 3 :(得分:2)
你可以试试这个。
String a = "Thundering Blow I";
String[] b = a.split(" ");
System.out.println(b[0]+" "+b[1]);
答案 4 :(得分:1)
这将从字符串末尾删除单个罗马数字(如果存在):
String input = "Thundering Blow returning MMXVI";
input = input.replaceAll("\\s[CDILMVX]*$", "");
MMXVI
2016年是罗马数字,以防您想知道。