如何删除一个字符串中的字符,并将其用于另一个字符串

问题描述:

我对Java很新颖,我知道这不能太难,但我无法完全弄明白。如何删除一个字符串中的字符,并将其用于另一个字符串

String xxChange = request.getParameter("XXChange");  
String yyChange = request.getParameter("YYChange");  
String zzChange = request.getParameter("ZZChange"); 
String aaaChange = request.getParameter("AAChange"); 

所以基本上我得到这些参数,只是将它们设置为字符串。这些字符串中的每一个都有多个数字,然后是两个字母,我的问题是如何删除字母并将其设置为新字符串。 Fyi ....字母前面的数字是在一个序列上,并且可以从1位数增长到多个,所以我不认为我可以做string.Substring。

你想的最后两个字符删除,所以用串这样的:

String s = "123AB"; 
String numbers = s.substring(0, s.length() - 2); 
+0

听起来像OP想删除前缀的数字,并保留后面的字符。 – Kaj 2011-05-06 14:09:54

+1

这很好,正是我在找的东西。感谢您的快速回复/帮助。 – Dan 2011-05-06 14:15:19

你可以测试像

String value = "123ABC"; 
System.out.println(value.replaceAll("\\d+(.*)", "$1")); 

东西,如果你只需要最后两个字母:

String input = "321Ab"; 
String lastTwo = input.substring(input.length() - 2); 

如果哟你需要数字和字母使用正则表达式:

Pattern p = Pattern.compile("(\\d+)(\\w{2})"); 
Matcher m = p.matcher("321Ab"); 
if (m.matches()) { 
    int number = Integer.parseInt(m.group(1)); // 321 
    String letters = m.group(2);    // Ab 
    ... 
}