小编jas*_*son的帖子

使用平衡parantheses在java中拆分字符串

我需要拆分以下字符串((OPERATING_CARRIER ='AB'或OPERATING_CARRIER ='AB'OR(OPERATING_CARRIER ='VA'AND(FLIGHT_NO = 604或FLIGHT_NO = 603)))):

OPERATING_CARRIER='AB'
OPERATING_CARRIER='AB'
OPERATING_CARRIER='VA'
FLIGHT_NO=604
FLIGHT_NO=603
Run Code Online (Sandbox Code Playgroud)

我尝试了下面这段代码

String syntax = "(OPERATING_CARRIER='AB' OR OPERATING_CARRIER='AB' OR     (OPERATING_CARRIER='VA' AND (FLIGHT_NO=604 OR FLIGHT_NO=603)))";
List < String > matchList = new ArrayList < String > ();
Pattern regex = Pattern.compile("\\(([^)]*)\\)");
Matcher regexMatcher = regex.matcher(syntax);
while (regexMatcher.find()) 
{
    matchList.add(regexMatcher.group(1));
    System.out.println(regexMatcher.group(1));
}
Run Code Online (Sandbox Code Playgroud)

我得到的输出为OPERATING_CARRIER ='AB'或OPERATING_CARRIER ='AB'OR(OPERATING_CARRIER ='VA'AND(FLIGHT_NO = 604或FLIGHT_NO = 603)

java regex parsing

3
推荐指数
1
解决办法
68
查看次数

标签 统计

java ×1

parsing ×1

regex ×1