Androidでは、テキストビュー内にTextViewがあり、いくつかのテキストの例(22のいいね、1つのいいね、または空のテキスト)が含まれています。ここでは、文字ではなく数字のみを取得したいので、String.replaceAll( ) 空のテキストなしで正確に数値を取得します。これがサンプルコードです...
textview.setText("2 Likes");
String com=textview.replaceAll("","");
String.split
配列内の文字列を次のように分割するために使用します。
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","");
}
正規表現を使用すると、いいねの数を簡単に見つけることができます。
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));
}
テキストが常にこのような意味になる場合 (32 いいね、2 いいね)
部分文字列関数を使用できます
If(yourstring.length>0)
{
string result = yourstring.substring(0,yourstring.index(" "));
}
else
{
Do whatever here..
}
これにより、数値部分だけが切り取られます。しかし、makesure that always a space
は数値の後に来る必要があります。