java - 如何使用正则表达式查找字符串中子字符串的不同出现次数?

标签 java regex expression substring

基本上我想做的是:

String mystr = "hello Benjamin Benny Benn hey hey";
String pattern = "Be";

所需列表 = {"Benjamin","Benny","Benn"};

我知道如何以一种非常简单的方式做到这一点。我正在寻找一种基于正则表达式或任何适合我的方法的快速方法。我想要以特定模式开头的所有子字符串(单词)的列表。

最佳答案

使用这个正则表达式:

Be\w+

它有什么作用?

它匹配所有以Be开头的单词

如果您想要以其他内容开头的单词,只需执行以下操作:

String startsWith="Be"; // change this to match your requirements

String regexPattern=startsWith+"\\w+"; //escaped backslash

现在,您可以替换 startsWith 中的任何内容,这样您就可以匹配以特定字符串开头的单词。

注意:您需要在 java 中转义反斜杠。所以 \ 变成 \\

关于java - 如何使用正则表达式查找字符串中子字符串的不同出现次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22280562/

相关文章:

java - Android Wi-Fi 直连网络

c# - 遇到无法识别的转义序列继续反转义

javascript - Javascript正则表达式按顺序替换数字

javascript - 用于验证字符串中括号的JS函数

java - 为可执行 Jar 提供自定义镜像

java - 如何使用 Spring Data Rest 和 PagingAndSortingRepository 处理异常?

scala - 尝试不完整的表达?

function - 如何在mathematica中定义通用函数?

java - Gradle 刷新失败

javascript - 正则表达式不尊重双引号