hive正则表达式的用法
regexp_replace用法
1. 截取字符串中的汉字部分:
举个栗子:select regexp_replace('七夕节comming!来啦','([^\\u4E00-\\u9FA5]+)','') from dual;
结果:七夕节来啦
2.截取字符串中的字母和数字部分:([^xyz] 不匹配这个集合中的任何一个字符)
举个栗子:select regexp_replace('wo爱你123CHINA中国!','([^a-zA-Z0-9]+)','') from dual
结果:wo123CHINA
3. 指明两项之间的一个选择。例子'([a-z]+|[0-9]+)$'表示所有小写字母或数字组合成的字符串。
栗子:SELECT regexp_replace('七夕节Coming666!','([a-z]+|[A-Z]+|[0-9]+)','') from dual
结果:七夕节!
4. 匹配一个非字数字符(/D 等同于 [^0-9])
举个栗子1:select regexp_replace('我爱你123zhongguo666!','(\\D+)','') from dual
结果:123666
regexp_extract用法(参数3取决于参数2()的数量,从0开始)
5. 截取字符串中的数字部分([xyz] 匹配这个集合中的任何一个字符)(/d 匹配一个字数字符)
举个栗子:select regexp_extract('七夕节coming666','([0-9]+)',1) from dual
or select regexp_extract('七夕节coming666','(\\d+)',1) from dual
结果:666
6.截取字符串中的字母部分
举个栗子:select regexp_extract('七夕节Coming666','([a-zA-Z]+)',1) from dual;
结果:Coming
另注意一种方法:(\\W)匹配汉字 (\w) 表示匹配字母、下划线、数字
例如:select regexp_extract('产险一级机构02','(\\W*)(\\w*)',1) from dual
结果:产险一级机构
例如:select regexp_extract('产险一级机构02','(\\W*)(\\w*)',2) from dual
结果:02
7 {n} 精确匹配n次
举栗子1:select regexp_extract('我爱你123zhongguo666!','(你)(.*?)(6)',0) from dual
结果:你123zhongguo6
举栗子2:select regexp_extract('我爱你123zhongguo666!','(你)(.*?)(6)',1) from dual
结果:你
举栗子3:select regexp_extract('我爱你123zhongguo666!','(你)(.*?)(6)',2) from dual
结果:123zhongguo
举栗子4:select regexp_extract('我爱你123zhongguo666!','(你)(.*?)(6)',3) from dual
结果:6
举个栗子2:select regexp_extract('152天内有67天无通话记录','([0-9]+)([^0-9]+)([0-9]+)',0) from dual
结果:152天内有67
举个栗子3:select regexp_extract('152天内有67天无通话记录','([0-9]+)([^0-9]+)([0-9]+)',1) from dual
结果:152
举个栗子4:select regexp_extract('152天内有67天无通话记录','([0-9]+)([^0-9]+)([0-9]+)',2) from dual
结果:天内有
举个栗子5:select regexp_extract('152天内有67天无通话记录','([0-9]+)([^0-9]+)([0-9]+)',3) from dual
结果:67
hive正则表达式的用法的更多相关文章
- Hive 基本语法操练(五):Hive 的 JOIN 用法
Hive 的 JOIN 用法 hive只支持等连接,外连接,左半连接.hive不支持非相等的join条件(通过其他方式实现,如left outer join),因为它很难在map/reduce中实现这 ...
- hive的shell用法(脑子糊涂了,对着脚本第一行是 #!/bin/sh 疯狂执行hive -f 结果报错)
hive脚本的执行方式 hive脚本的执行方式大致有三种: hive控制台执行: hive -e "SQL"执行: hive -f SQL文件执行:参考hive用法: usage: ...
- 正则表达式常用用法汇总 __西科大C语言
正则表达式,又称正规表示法.常规表示法.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列 ...
- oracle 10g正则表达式 REGEXP_LIKE 用法
ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的功能相似3,REGEXP_SUBSTR :与SUBS ...
- javaScript中有关正则表达式的用法总结
js中处理正则表达式的类:RegExp 用法: var reg=new RegExp("express"); 或者: var reg=/express/; js中常用的6个方法: ...
- asp的RegExp对象正则表达式功能用法
RegExp对象提供简单的正则表达式支持功能. RegExp对象的用法: 以下为引用的内容: Function RegExpTest(patrn, strng) Dim regEx, Match, M ...
- hive支持in用法是从0.3.2版本后
写hive 用in 如分时段,分类型,分平台统计点击量 select substr(createtime,12,2) hour,logtype,os_id,count(*) from wizad_ ...
- 终于明白vim 和 grep 中 的正则表达式的用法, vim 正则表达式 和grep基本正则表达式 几乎一样
要搞清楚 vim中的正则和普通的Perl正则表达式的区别: 因为在perl中所有的元字符 都可以直接使用, 不需要在 元字符的前面加 反斜杠. 但是在vim, 包括grep中就有所区别, 同样是元字符 ...
- PYTHON 爬虫笔记四:正则表达式基础用法
知识点一:正则表达式详解及其基本使用方法 什么是正则表达式 正则表达式对子符串操作的一种逻辑公式,就是事先定义好的一些特定字符.及这些特定字符的组合,组成一个‘规则字符串’,这个‘规则字符串’用来表达 ...
随机推荐
- .net持续集成测试篇之Nunit参数化测试
系列目录 在进行单元测试的时候,很多时候,很多时候我们都是在单元测试方法内部提供特定的值,但是这样测试往往造成样本数不足从而导致覆盖的结果不够全面,很多时候我们更想提供来自外部的,满足条件的一组值来进 ...
- Shiro权限管理框架(三):Shiro中权限过滤器的初始化流程和实现原理
本篇是Shiro系列第三篇,Shiro中的过滤器初始化流程和实现原理.Shiro基于URL的权限控制是通过Filter实现的,本篇从我们注入的ShiroFilterFactoryBean开始入手,翻看 ...
- 一起来学JavaScript吧(JS兔子领进门)
首先我们学习一门语言呢不一要学习它的所有历史,但是一定要知道它的使用基本规则.不要在最基础的部分出错.不过胡萝贝还是带你了解JavaScript的历史吧. 1994年网景公司(Netscape)发布了 ...
- python3学习-logging模块
1.logging模块的使用非常简单,引入模块就可以使用. import logging logging.debug('This is debug message') logging.info('Th ...
- 从零开始学习springboot之热部署的配置
各位看官大家好,博主之前因为毕业设计以及毕业旅游耽搁了好长一段时间没有更新博客了,从今天起又会慢慢开始学习啦. 今天主要是来学习springboot热部署的配置. 一. 热部署 我们通常在修改某些文件 ...
- Git原理入门简析
为了获得更好的阅读体验,建议访问原地址:传送门 前言: 之前听过公司大佬分享过 Git 原理之后就想来自己总结一下,最近一忙起来就拖得久了,本来想塞更多的干货,但是不喜欢拖太久,所以先出一版足够入门的 ...
- 简述关于ASP.NET MVC与.NET CORE 的区别
简述关于ASP.NET MVC与.NET CORE的区别1.关于ASP.NET 关于MVC刚开始接触这个技术的时候我经常不理解他们的名字,我相信许多学ASP.NET开发人员开始接触MVC应该也和我一样 ...
- net core Webapi基础工程搭建(七)——小试AOP及常规测试_Part 1
目录 前言 拦截器 异常拦截器 测试结果 身份验证拦截器 测试 小结 补充 2019-07-31 前言 一天天不知道怎么过的,但确实挺忙,事赶事不带停那种,让我感觉跟在流水线干活一样,忙活的事差不多了 ...
- 循环 与 分支语句 和 字符函数库cctype 文件简单处理
循环 for循环 while循环 do while循环 通常,入口条件循环比出口条件循环好,因为循环开始前对条件进行检查 c++11基于范围的for循环 对数组(或容器类,如:vector和a ...
- Apache 配置 https
本人当前的Apache版本是: 由于我是yum安装的http,默认的http配置文件我就不多说了, 下面开始记录一下自己的线上配置过程: 1,进入/etc/httpd/conf.d目录,新建证书放 ...