如何使用单词从字符串中获取子字符串以一些文本开头

dai*_*kar 2 java

我正在尝试使用一些起始文本从字符串中读取单词。例如

字符串str =“广告:234983 ABCD2987423 availabe”

在上面的示例中,该值每次都会更改。因此,我想读取以文本“ ABCD”开头的字符串。即(ABCD2987423)

注意:有时会在字符串中添加多余的文本,因此在此示例中索引将不起作用。

Tim*_*sen 5

您可以使用String#replaceAll正则表达式使用单线:

String str = " Ads : 234983 ABCD2987423 available";
String text = str.replaceAll(".*\\b(ABCD\\w*)\\b.*", "$1");
System.out.println(text);
Run Code Online (Sandbox Code Playgroud)

打印:

ABCD2987423
Run Code Online (Sandbox Code Playgroud)

  • @daithashankar 也许重新加载您的页面。我的答案中的代码确实有效(我测试过)。 (2认同)