hive正则表达式的用法
生活随笔
收集整理的這篇文章主要介紹了
hive正则表达式的用法
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
regexp_replace用法 1.? 截取字符串中的漢字部分: 舉個(gè)栗子:select regexp_replace('七夕節(jié)comming!來啦','([^\\u4E00-\\u9FA5]+)','') from dual; 結(jié)果:七夕節(jié)來啦
regexp_extract用法(參數(shù)3取決于參數(shù)2()的數(shù)量,從0開始) 5. 截取字符串中的數(shù)字部分([xyz] 匹配這個(gè)集合中的任何一個(gè)字符)(/d 匹配一個(gè)字?jǐn)?shù)字符) 舉個(gè)栗子:select regexp_extract('七夕節(jié)coming666','([0-9]+)',1) from dual ????? or select regexp_extract('七夕節(jié)coming666','(\\d+)',1) from dual 結(jié)果:666 6.截取字符串中的字母部分 舉個(gè)栗子:select regexp_extract('七夕節(jié)Coming666','([a-zA-Z]+)',1) from dual; 結(jié)果:Coming 另注意一種方法:(\\W)匹配漢字?? (\w) 表示匹配字母、下劃線、數(shù)字 例如:select regexp_extract('產(chǎn)險(xiǎn)一級(jí)機(jī)構(gòu)02','(\\W*)(\\w*)',1) from dual? 結(jié)果:產(chǎn)險(xiǎn)一級(jí)機(jī)構(gòu) 例如:select regexp_extract('產(chǎn)險(xiǎn)一級(jí)機(jī)構(gòu)02','(\\W*)(\\w*)',2) from dual? 結(jié)果:02 7 {n} 精確匹配n次 舉栗子1:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',0) from dual 結(jié)果:你123zhongguo6 舉栗子2:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',1) from dual 結(jié)果:你 舉栗子3:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',2) from dual 結(jié)果:123zhongguo 舉栗子4:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',3) from dual 結(jié)果:6 舉個(gè)栗子2:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',0) from dual 結(jié)果:152天內(nèi)有67 舉個(gè)栗子3:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',1) from dual 結(jié)果:152 舉個(gè)栗子4:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',2) from dual 結(jié)果:天內(nèi)有 舉個(gè)栗子5:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',3) from dual 結(jié)果:67
? 2.截取字符串中的字母和數(shù)字部分:([^xyz] 不匹配這個(gè)集合中的任何一個(gè)字符)
舉個(gè)栗子:select regexp_replace('wo愛你123CHINA中國!','([^a-zA-Z0-9]+)','') from dual 結(jié)果:wo123CHINA3. 指明兩項(xiàng)之間的一個(gè)選擇。例子'([a-z]+|[0-9]+)$'表示所有小寫字母或數(shù)字組合成的字符串。
栗子:SELECT regexp_replace('七夕節(jié)Coming666!','([a-z]+|[A-Z]+|[0-9]+)','') from dual
結(jié)果:七夕節(jié)! 4. 匹配一個(gè)非字?jǐn)?shù)字符(/D 等同于 [^0-9]) 舉個(gè)栗子1:select regexp_replace('我愛你123zhongguo666!','(\\D+)','') from dual 結(jié)果:123666regexp_extract用法(參數(shù)3取決于參數(shù)2()的數(shù)量,從0開始) 5. 截取字符串中的數(shù)字部分([xyz] 匹配這個(gè)集合中的任何一個(gè)字符)(/d 匹配一個(gè)字?jǐn)?shù)字符) 舉個(gè)栗子:select regexp_extract('七夕節(jié)coming666','([0-9]+)',1) from dual ????? or select regexp_extract('七夕節(jié)coming666','(\\d+)',1) from dual 結(jié)果:666 6.截取字符串中的字母部分 舉個(gè)栗子:select regexp_extract('七夕節(jié)Coming666','([a-zA-Z]+)',1) from dual; 結(jié)果:Coming 另注意一種方法:(\\W)匹配漢字?? (\w) 表示匹配字母、下劃線、數(shù)字 例如:select regexp_extract('產(chǎn)險(xiǎn)一級(jí)機(jī)構(gòu)02','(\\W*)(\\w*)',1) from dual? 結(jié)果:產(chǎn)險(xiǎn)一級(jí)機(jī)構(gòu) 例如:select regexp_extract('產(chǎn)險(xiǎn)一級(jí)機(jī)構(gòu)02','(\\W*)(\\w*)',2) from dual? 結(jié)果:02 7 {n} 精確匹配n次 舉栗子1:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',0) from dual 結(jié)果:你123zhongguo6 舉栗子2:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',1) from dual 結(jié)果:你 舉栗子3:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',2) from dual 結(jié)果:123zhongguo 舉栗子4:select regexp_extract('我愛你123zhongguo666!','(你)(.*?)(6)',3) from dual 結(jié)果:6 舉個(gè)栗子2:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',0) from dual 結(jié)果:152天內(nèi)有67 舉個(gè)栗子3:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',1) from dual 結(jié)果:152 舉個(gè)栗子4:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',2) from dual 結(jié)果:天內(nèi)有 舉個(gè)栗子5:select regexp_extract('152天內(nèi)有67天無通話記錄','([0-9]+)([^0-9]+)([0-9]+)',3) from dual 結(jié)果:67
轉(zhuǎn)載于:https://www.cnblogs.com/db-record/p/11454325.html
總結(jié)
以上是生活随笔為你收集整理的hive正则表达式的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab 图像中加入高斯白噪声,MA
- 下一篇: RISC-V应用于高性能处理器的可能性