如何使用string.trim()方法仅在末尾修剪空格?
我的意思是不影响正面的空间
ex:输入:“这是linkedin” o / p:“这是linkedin”
答案 0 :(得分:13)
答案 1 :(得分:3)
没有右边修剪方法,但你可以通过几种解决方法来完成。 一个包括在字符串的开头放置一个非空字符,修剪它然后删除字符。使用String.replaceAll()可以使用正则表达式。
答案 2 :(得分:2)
我相信你不能用trim()
做到这一点。也许你可以找到有实用方法StringUtils#stripEnd()的Apache公共。
我没有对此进行过测试,但希望它适用于您的目的:
string = string.replaceAll("\\s+$", "");
另一个解决方案是反复遍历从字符串中获取的char[]
并删除不需要的字符!
答案 3 :(得分:0)
试试这个正则表达式
str = str.replaceAll("(.+?) +", "$1");
答案 4 :(得分:0)
如果您必须使用 trim()方法,那么这可能会有所帮助: -
public class OP2 {
public static void main(String[] s) {
//object hash table
int index = 0;
String s1 = " sdfwf ";
for(int i=0;i<s1.length();i++)
{
if(s1.charAt(i)==' ')
index = index + 1;
else
break;
}
System.out.println(s1.substring(0,index)+ s1.trim());
}
}
答案 5 :(得分:0)
如果查询是针对.net语言的,那么您可以使用内置的RTRIM方法来实现相同的目标。
答案 6 :(得分:0)
在.NET / C#中,您可以在字符串对象上使用TrimEnd方法:
" this is linkedin ".TrimEnd();
答案 7 :(得分:0)
public class RegexRemoveEnd {
public static String removeTrailingSpaces(String text) {
return text.replaceAll(" +$", "");
}
}