0

在Android中,我有一个TextView,在textview里面,它包含一些文本示例(22个喜欢,有时1个喜欢或空文本)。这里我只想得到数字而不是字符。所以使用如何使用String.replaceAll( ) 以准确获取数字而没有空文本。这是一个示例代码...

textview.setText("2 Likes");
String com=textview.replaceAll("","");
4

3 回答 3

1

用于String.split将 Array 中的字符串拆分为:

textview.setText("2 Likes");
String strtxt=textview.getText();

String[] arrliks = strtxt.split(" ");  
String num_of_likes=arrliks[0]; //<<< get 2 here

您还可以使用正则表达式来拆分字符串

编辑 :

你也叫String.replaceAll 用作:

   String com=textview.getText();
   String liks = "likes";
   String str_new   ="";
  if (com.toLowerCase().indexOf(liks) != -1) {
     str_new=com.replaceAll(" Likes","");
   }else{
     str_new=com.replaceAll(" like","");
   }
于 2013-01-29T11:53:33.503 回答
0

如果您的文字总是这样表示(32 个喜欢,2 个喜欢)

您可以使用子字符串功能

If(yourstring.length>0)
{

    string result = yourstring.substring(0,yourstring.index(" "));
}
else
{
Do whatever here..
}

这将导致单独切割数字部分。但是 makesure that always a space应该在数字之后。

于 2013-01-29T11:56:08.047 回答
0

您可以使用正则表达式轻松找到喜欢的数量:

     String txt = textview.getText();
     Pattern p = Pattern.compile("^([0-9]+).*");
     Matcher m = p.matcher(txt);

    if (m.find()) {
        int value = Integer.parseInt(am.group(1));
    }
于 2013-01-29T12:03:44.927 回答