从 String 中删除空格时遇到问题

trouble deleting spaces from String

我正在本机 android 应用程序上使用 appium 自动化

我有一个 MobileElement,我想从中获取文本

MobileElement likesElement = (MobileElement) driver.findElement(By.id("com.instagram.android:id/row_feed_textview_likes"));

然后我有字符串

String likesVal = likesElement.getText();

当我 运行 System.out.println(likesVal); 它打印:

Liked by you and 107 others

我需要删除除 107 之外的所有内容,这样我就可以 运行 parseInt on likesVal

我试过了

likesVal= likesVal.replaceAll("[*a-zA-Z_.-]", "");
likesVal= likesVal.replaceAll(" ", "");
StringUtils.deleteWhitespace(likesVal);
int likes = Integer.parseInt(likesVal);
System.out.println(likes);

但我在 int likes = Integer.parseInt(likesVal);

上收到 java.lang.NumberFormatException For input string: "107 "

在删除 likesVal 除了数字以外的所有内容之后,为什么 likesVal 中 "others" 之前的 space 没有被删除?

在去除 likesVal 除数字以外的所有内容后,我需要打印“107”而不是“107”

我建议使用一种模式来替换所有非数字 (\D)。喜欢,

String tmp = "Liked by you and 107 others";
// String likesVal = likesElement.getText().replaceAll("\D+", "");
String likesVal = tmp.replaceAll("\D+", "");
int likes = Integer.parseInt(likesVal);
System.out.println(likes);

产出

107

根据要求。