在Android中,我有一个TextView,在textview里面,它包含一些文本示例(22个喜欢,有时1个喜欢或空文本)。这里我只想得到数字而不是字符。所以使用如何使用String.replaceAll( ) 以准确获取数字而没有空文本。这是一个示例代码...
textview.setText("2 Likes");
String com=textview.replaceAll("","");
用于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","");
}
如果您的文字总是这样表示(32 个喜欢,2 个喜欢)
您可以使用子字符串功能
If(yourstring.length>0)
{
string result = yourstring.substring(0,yourstring.index(" "));
}
else
{
Do whatever here..
}
这将导致单独切割数字部分。但是 makesure that always a space
应该在数字之后。
您可以使用正则表达式轻松找到喜欢的数量:
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));
}