TokinMa 2020-06-05 18:56 采纳率: 25%
浏览 569
已结题

spark sql 怎么解析多层嵌套对象数组的json,而且还要按条件筛选,求助

dPoolExecutor.java:180)\n\",\"requestId\":\"\",\"clientIp\":\"\",\"logIp

要根据:\"class\":\"com.zhidian.cloud.passport.interceptor.PassportInterceptor 这个内容进行过滤

再拿到里面的每个字段内容存入clickhouse中

刚接触这个不久,弄了好几天了就是搞不出来···求助

  • 写回答

1条回答 默认 最新

  • syyyyyyyyyyyyyyh 2020-06-05 22:27
    关注
    /*
        * 方法功能:根据正则在字符串提取一段值,用于后面在url地址里提取ID值。
        * 例如在“http://news.cnstock.com/news,yw-201908-4413224.htm”把“4413224”提取出来。
        */
        public static String getPlaceholderValue(String src, String regex){
            Pattern pattern = Pattern.compile(regex);//编译规则
            Matcher matcher = pattern.matcher(src);//根据规则匹配src
            if(matcher.find()){//如果匹配到
                return matcher.group();//获取到
            }
    
            return null;
        }
    
        @Test
        public void testGetPlaceholderValue(){
            String str = "http://news.cnstock.com/news,yw-201908-4413224.htm";
            String placeholderValue = StringUtil.getPlaceholderValue(str, "[0-9]+(?=[^0-9]*$)");
            System.out.println(placeholderValue);
        }
    
        道理是这个道理,设计一套对应你数据的正则
    
    
    评论

报告相同问题?