当前位置: 首页 > news >正文

邯郸网站建设选哪家好采集侠 wordpress

邯郸网站建设选哪家好,采集侠 wordpress,网站的数据库做备份,厦门市建设工程造价网目录 一、正则的通配符简介1、正则表达式的符号及意义2、各种操作符的运算优先级#xff1a; 二、案例数据要求分析实现输出结果实现2实现3 总结 一、正则的通配符简介 1、正则表达式的符号及意义 符号含义实列/做为转意#xff0c;即通常在/后面的字符不按原来… 目录 一、正则的通配符简介1、正则表达式的符号及意义2、各种操作符的运算优先级 二、案例数据要求分析实现输出结果实现2实现3 总结 一、正则的通配符简介 1、正则表达式的符号及意义 符号含义实列/做为转意即通常在/后面的字符不按原来意义解释如 * “匹配它前面元字符0次或多次/a*/将匹配a,aa,aaa加了”/后/a/* /将只匹配a* .匹配任何一个字符^匹配一个输入或一行的开头/^a/匹配an A而不匹配An a$匹配一个输入或一行的结尾/a$/匹配An a而不匹配an A*匹配前面元字符0次或多次/ba*/将匹配b,ba,baa,baaa匹配前面元字符1次或多次/ba/将匹配ba,baa,baaa?匹配前面元字符0次或1次/ba?/将匹配b,ba(x)匹配x保存x在名为$1…$9的变量中x竖y匹配x或y{n}精确匹配n次{n,}匹配n次以上{n,m}匹配n-m次[xyz]字符集(character set)匹配这个集合中的任一一个字符(或元字符)[^xyz]不匹配这个集合中的任何一个字符/d匹配一个字数字符//d/ /[0-9]//D匹配一个非字数字符//D/ /[^0-9]//s匹配一个空白字符包括/n,/r,/f,/t,/v等/S匹配一个非空白字符等于/[^/n/f/r/t/v]//w匹配一个可以组成单词的字符(alphanumeric这是我的意译含数字)包括下划线如[/w]匹配$5.98中的5等于[a-zA-Z0-9]/W匹配一个不可以组成单词的字符如[/W]匹配$5.98中的 $等于[^a-zA-Z0-9] 备注 ‘( )’ 标记一个子表达式的开始和结束位置。 ‘[]’ 标记一个中括号表达式。 /num 匹配 num其中 num 是一个正整数。对所获取的匹配的引用。 2、各种操作符的运算优先级 转义符圆括号和方括号限定符位置和顺序 具体如下 / 转义符 (), ( ?: ), (?), [] 圆括号和方括号 *, , ?, {n}, {n,}, {n,m} 限定符 ^, $, anymetacharacter 位置和顺序 正则表达式的符号及意义 二、案例 数据 with temp as (select [{favorite[电影:杀死比尔,电视剧:宰相刘罗锅],age15,gender:男}] as attributes ---第一行 union all select [{favorite像风一样的女人,age未知,gender:男}] as attributes ---第二行 union all select [{favorite28, gender:女,age15}] as attributes ---第三行 union all select [{gender:女,favorite[综艺,动漫],age15 }] as attributes ---第四行 )要求 将favorite的值age的值和gender的值取出来 分析 目前从temp表可知表中可知表里面只有一个attributes特征字段这个字段其实包含三个字段分别为favorite和age和gender该字段类型不是标准的json格式哪怕转换成标准的json格式也不太容易假设转成json,你首先要处理最外层的中括号其次json里面的key是有双引号的你需要给key添加双引号再次字段类型也不一致age15和age未知综上分析需要使用regexp_extract函数使用regexp_extract函数需要注意什么注意字段顺序不一样不是统一的这是第一点第二点有些逗号后面有空格有些没有花括号前有些有空格有些没有第三点favorite和age后面是等号gender后面是冒号 实现 select regexp_extract (attributes,favorite\\(.*?)(\\,\\s{0,1}age|\\,\\s{0,1}gender|\\s{0,1}\\}),1) as favorite ,regexp_extract (attributes,age\\(.*?)(\\s{0,1}\\}|\\,\\s{0,1}favorite|\\,\\s{0,1}gender),1) as age ,regexp_extract (attributes,gender\\:(.*?)(\\s{0,1}\\}|\\,\\s{0,1}favorite|\\,\\s{0,1}age),1) as gender from temp ;输出结果 favoriteagegender[“电影”:杀死比尔,“电视剧”:宰相刘罗锅]15男“像风一样的女人”未知男2815女[“综艺”,“动漫”]15女 实现2 虽然说转json比较麻烦但还是可以实现的需要一些技巧主要的问题是加引号其次是去最外层的中括号其他是一些小细节 ----去除空格字符和里面的引号会在加引号时有干扰等,第一个replace去空格第二个去除双引号 select regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,) from temp----处理最外层的中括号,并加最外层的引号 select regexp_replace(regexp_replace(regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,),\\[\\{,\\{\\),\\}\\],\\\\}) from temp----最终处理 select regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,),\\[\\{,\\{\\),\\}\\],\\\\}),gender\\:,gender\\),\\,\\\\:\\),\\,,\\),\\age,\\\\,\\age),\\gender,\\\\,\\gender),\\favorite,\\\\,\\favorite) as attributes from temp 至此终于到最标准的json格式了处理json可以使用get_json_object,也可以使用json_tuple select get_json_object(attributes,$.favorite) ,get_json_object(attributes,$.age) ,get_json_object(attributes,$.gender) from (select regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,),\\[\\{,\\{\\),\\}\\],\\\\}),gender\\:,gender\\),\\,\\\\:\\),\\,,\\),\\age,\\\\,\\age),\\gender,\\\\,\\gender),\\favorite,\\\\,\\favorite) as attributes from temp ) tt select json_tuple(attributes,favorite,age,gender) from (select regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,),\\[\\{,\\{\\),\\}\\],\\\\}),gender\\:,gender\\),\\,\\\\:\\),\\,,\\),\\age,\\\\,\\age),\\gender,\\\\,\\gender),\\favorite,\\\\,\\favorite) as attributes from temp ) tt select b.favorite ,b.age ,b.gender from ( select regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,),\\[\\{,\\{\\),\\}\\],\\\\}),gender\\:,gender\\),\\,\\\\:\\),\\,,\\),\\age,\\\\,\\age),\\gender,\\\\,\\gender),\\favorite,\\\\,\\favorite) as attributes from temp ) tt lateral view json_tuple(attributes,favorite,age,gender) b as favorite,age,gender 实现3 select attributes[favorite] as favorite ,attributes[gender] as gender ,attributes[age] as age from ( select str_to_map(attributes,,,) as attributes from ( select regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace( regexp_replace(attributes,\\n|\\r|\\t|\\s,),\\,),\\:,\\),\\,,\\),\\age,\\,age),\\favorite,\\,favorite),\\gender,\\,gender),(\\[\\{)|(\\}\\]),) as attributes from temp ) tt ) ttm总结 首先需要明确的是上面中的例子是人为制造的非常不规则所以导致处理起来非常麻烦里面有好几个中括号中括号里面是逗号分割还有gender专门后面编成冒号这些无疑加大了处理难度上述使用三种方法进行处理优先级regexp_extract str_to_mapget_json_object;
http://www.sadfv.cn/news/78791/

相关文章:

  • 美食网站建设的功能全球咨询公司排名
  • 做漂亮的二维码网站wordpress数组
  • 哪些网站可以做视频直播为某公司或企业做的门户网站
  • 网站设计内容做任务给钱的网站
  • 如何做网站结构分析湖北工程建设信息网官网
  • 网站开发小程序开发公司公司网站建设行为规定
  • 网站运营外包鲜花电子商务网站建设规划书
  • 青岛博海建设集团有限公司网站临夏网站制作
  • 单页面网站怎么优化阿里云 wordpress 建站
  • 河南省建设招投标网站电子商务网站设计怎么做
  • CMS网站建设实战试题网络论坛有些什么平台
  • 常州手机网站效果深圳品牌网站开发
  • 模仿大型门户网站做ppt做自媒体小视屏哪个网站好
  • 江门网站推广网页设计市场价
  • 为企业开发网站网页设计工资怎么样
  • 手机能用的网站流程图
  • asp做的网站数据库在哪里wordpress中front-page
  • 郑州企业网站排名优化自己搭建云手机服务器
  • 哪个网站可以免费做网页制作网架厂家
  • 企业的网站用vue做的买了个域名 如何建网站
  • 云商城是什么网站加载优化
  • 上海网站建设在哪里郓城那家网站做的好
  • 开发一个网站大概多少钱重庆 建网站
  • 安徽太基建设官方网站成都品牌形象设计公司
  • 用个人的信息备案网站吗手机网站建设需要多少钱
  • 公司做网站的费用怎么做账网站建设冖金手指花总十四
  • 深圳网站开发公网站上添加图片的原则
  • 网站建设及空间推进门户网站建设 用好用活
  • 网站开发工程师面试问题wordpress 添加备案信息
  • 婚庆设备租赁网站源码陕西建设执业注册中心网站