正则表达式提取两个字符之间的字符串
例如句子:我实在不知道该怎么办/end/了。想提取空格和/end/之间的字符串,即得到怎么办,但是不要该怎么办、不知道该怎么办等字符串。正则表达式该怎么写呢?不用正则用其...
例如句子:我 实在 不知道 该 怎么办/end/ 了。
想提取空格和/end/之间的字符串,即得到 怎么办,但是不要 该 怎么办、不知道 该 怎么办等字符串。正则表达式该怎么写呢?不用正则用其他的方法也可以。PS.我是用java写的。 展开
想提取空格和/end/之间的字符串,即得到 怎么办,但是不要 该 怎么办、不知道 该 怎么办等字符串。正则表达式该怎么写呢?不用正则用其他的方法也可以。PS.我是用java写的。 展开
1个回答
展开全部
([^ ]+?)/end/
注意最前面有一个空格。你要的东西在第一个分组里。
PS.你会在java里用正则获取第一个分组吧?下面是一个例子(部分),subjectString是“我 实在 不知道 该 怎么办/end/ 了”所在的字符串。
List<String> matchList = new ArrayList<String>();
try {
Pattern regex = Pattern.compile(" ([^ ]+?)/end/");
Matcher regexMatcher = regex.matcher(subjectString);
while (regexMatcher.find()) {
matchList.add(regexMatcher.group(1));
}
} catch (PatternSyntaxException ex) {
// Syntax error in the regular expression
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询