Regex:在两个词之间捕获一个词
来源:爱站网时间:2021-09-16编辑:网友分享
让我们说这些是我的输入:类型Database xyz {abc}类型Database {abc}在这两种情况下我都想捕获此数据库模式是:“ type” +任意数量的...
问题描述
让我们说这些是我的投入:
类型数据库xyz {abc}
类型数据库{abc}
我想同时捕获这两种情况
数据库
模式是:
“类型” +任意数量的空格+我想要的+任意数量的空格+任何字符
目前为止,但是我不确定如何匹配任何字符。(?
思路:
我确定您不需要后移,因为只需匹配并捕获第二个单词就可以工作:
String input = "type Database xyz{ abc }";
Pattern pattern = Pattern.compile("type\\s+(.*?)\\s+.*");
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
找到单词并打印出来
Type: Database