Java 如何使用正则表达式从表中提取别名?

Java 如何使用正则表达式从表中提取别名?,java,sql,regex,Java,Sql,Regex,我需要获取java中表的别名,用于此正则表达式。 例如,对于此字符串:来自行项目A内部连接订单B ON(B.O_ORDERKEY=A.L_ORDERKEY)内部连接客户C ON(C.C_CUSTKEY=B.O_ORDERKEY)我应该获得A、B、C 如何在java中使用regex实现这一点?如果我们所有的输入都与问题类似,我们将从一个简单的表达式开始,然后用更多的输入进行测试: \s+([A-Z])\s+ 测验 import java.util.regex.Matcher; 导入java.ut

我需要获取java中表的别名,用于此正则表达式。
例如,对于此字符串:
来自行项目A内部连接订单B ON(B.O_ORDERKEY=A.L_ORDERKEY)内部连接客户C ON(C.C_CUSTKEY=B.O_ORDERKEY)
我应该获得A、B、C

如何在java中使用regex实现这一点?

如果我们所有的输入都与问题类似,我们将从一个简单的表达式开始,然后用更多的输入进行测试:

\s+([A-Z])\s+
测验
import java.util.regex.Matcher;
导入java.util.regex.Pattern;
最后一个字符串regex=“\\s+([A-Z])\\s+”;
final String String=“FROM lineitem A内部联接订单B ON(B.O_ORDERKEY=A.L_ORDERKEY)内部联接客户C ON(C.C_CUSTKEY=B.O_ORDERKEY)”;
最终模式=Pattern.compile(regex,Pattern.MULTILINE);
final Matcher Matcher=pattern.Matcher(字符串);
while(matcher.find()){
System.out.println(“完全匹配:+matcher.group(0));
对于(int i=1;i
import java.util.regex.Matcher;
import java.util.regex.Pattern;

final String regex = "\\s+([A-Z])\\s+";
final String string = "FROM lineitem A INNER JOIN orders B ON (B.O_ORDERKEY = A.L_ORDERKEY) INNER JOIN customer C ON (C.C_CUSTKEY = B.O_ORDERKEY)";

final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);

while (matcher.find()) {
    System.out.println("Full match: " + matcher.group(0));
    for (int i = 1; i <= matcher.groupCount(); i++) {
        System.out.println("Group " + i + ": " + matcher.group(i));
    }
}