2

我必须从 String 变量中删除特定的标记。

例如:如果字符串变量就像"GUID+456709876790"我需要"GUID+"从字符串中删除部分并且只需要"456709876790".

如何做呢?

4

6 回答 6

7

两种选择:

  • 由于您只是从头开始删除,因此您可以非常轻松地使用子字符串:

    text = text.substring(5);
    // Or possibly more clearly...
    text = text.substring("GUID+".length());
    
  • 要在字符串中的任何位置删除它,只需使用替换:

    text = text.replace("GUID+", "");
    

注意String.replace()在后一种情况下使用 ,而不是String.replaceAll()- 后者使用正则表达式,这会影响+.

于 2013-01-16T11:12:16.293 回答
3
String s = "GUID+456709876790";
String token = "GUID+";
s = s.substring(s.indexOf(token) + token.length());
// or s = s.replace(token, "");
于 2013-01-16T11:12:46.157 回答
2

如果您正在使用 apache.commons.lang库,则可以使用StringUtils

StringUtils.remove(yourString, token);
于 2013-01-16T11:18:06.937 回答
1
  String str = "GUID+456709876790"

 str.substring(str.indexOf("+")+1)
于 2013-01-16T11:13:06.137 回答
1

试试这个:

String a = "GUID+456709876790";
String s = a.replaceAll("\\D","");

我假设你只想要数字,因为我在这里使用了正则表达式来删除任何不是数字的东西

于 2013-01-16T11:13:20.730 回答
0

这对我有用

String Line="test line 1234 abdc",aux;
token=new StringTokenizer(Line);

 while(token.hasMoreTokens())
   if(!("1234").equals(aux=token.nextToken())){ 
     new_line+= aux+" ";
     System.out.println("la nueva string es: "+ new_line);
   }
于 2017-11-25T18:36:56.277 回答