Oracle 截取、查找字符函数(持续更新)

整理一些常用的截取、查找字符函数:

1、查找某一个字符串中某一个字符(串)出现的次数

SELECT LENGTH(REGEXP_REPLACE(REPLACE(‘anne<br>lily<br>jane‘, ‘<br>‘, ‘@‘),  ‘[^@]+‘,  ‘‘)) COUNT FROM DUAL; --返回2

2、判断某个字符是否在源字符串出现过
select instr(‘anne<br>lily<br>jane‘,‘<br>‘,1) from dual --返回5

3、当某个字符在源字符串中出现多次时,去掉最后一个(前提是该重复字符在源字符串最后一定会出现)
SELECT SUBSTR(‘anne<br>lily<br>jane<br>‘,1,(LENGTH(‘anne<br>lily<br>jane<br>‘)-LENGTH(‘<br>‘))) FROM dual --返回anne<br>lily<br>jane

4、当某个特殊符号在源字符串中出现多次,只截取第一次出现位置后面多少位
select substr(‘adssf.anne.aaaa‘,1,instr(‘adssf.anne.aaaa‘,‘.‘,1)+3) from dual --返回adssf.ann

select substr(‘asdfANNE-asdfe-123456‘
,instr(‘asdfANNE-asdfe-123456‘,‘-‘,1)+1
,length(‘asdfANNE-asdfe-123456‘)-instr(‘asdfANNE-asdfe-123456‘,‘-‘,1)+1
) from dual --返回asdfe-123456

时间: 2024-11-07 11:45:18

Oracle 截取、查找字符函数(持续更新)的相关文章

Oracle截取字符串的函数substr

Oracle截取字符串的函数substr substr Oracle中的截取字符串函数. 语法如下: substr( string, start_position, [ length ] ) 参数分析: string 字符串值 start_position 截取字符串的初始位置, Number型,start_position为负数时,表示从字符串右边数起. length 截取位数,Number型 其中,length为可选,如果length为空(即不填)则返回start_position后面的所有

Oracle中的字符函数

Oracle中常用的字符串函数有以下几种: 1.upper()---将字符串的内容全部转换为大写.lower()---将字符串的内容全部转换为小写.具体用法: select  upper('test'),lower('TEST')  from  dual 2.initcap()--将字符串的首字母变成大写.具体用法: select  enamel,initcap(ename)  from  emp 3.replace()--字符串替换函数.具体用法: select  ename,replace(

php 常用的好函数(持续更新)

parse_url parse_url $url = "http://www.electrictoolbox.com/php-extract-domain-from-full-url/"; $parts = parse_url($url); Array ( [scheme] => http [host] => www.electrictoolbox.com [path] => /php-extract-domain-from-full-url/ ) realpath

Mysql的一些常用sql函数(持续更新。。)

1. 字符串拼接函数 :CONCAT(str1,str2,...) SELECT CONCAT('AAA','BBB') STR; //AAABBB 2. 判断是否为null,为null就指定另外一个值:IFNULL(expr1,expr2) SELECT IFNULL('AAAA','BBB') STR; //AAAA SELECT IFNULL(NULL,'BBB') STR; //BBB 3. 获取当前日期时间函数 :NOW() select NOW(): //2018-07-30 13:

sql常用函数---持续更新

1.SQL SERVER中的FLOAT转换为VARCHAR SELECT CAST(CAST(字段 AS DECIMAL(20,7)) AS VARCHAR(20)) FROM 要查的表 或者 SELECT CONVERT(VARCHAR(20),CONVERT(DECIMAL(20,7),字段)) FROM 要查的表 CAST   CONVERT   STR

在项目开发中经常用到的全局函数(持续更新)

//打印 function p($res,$exit = 0){ echo '<pre>'; print_r($res); echo '</pre>'; if($exit){ exit(); } } // 是否正整数 function is_positive_integer($num = 0) { return is_numeric($num) && $num == (int) $num && $num > 0; } // 是否非空字符串 fu

oracle正则截取字符串的函数

现在有这么一个需求, 数据库中的一个手输的'籍贯'字段,要按一定的规范截取显示在报表上,比如,如果'籍贯'的内容是:'山东省潍坊市昌乐县', 那么报表里要显示为:'山东昌乐', 如果'籍贯'是山东省潍坊市寒亭区 那么就要出来 山东潍坊,简化的基本需求就是这样,取省一级和县一级,如果县一级是个区,那就取到市一级, 没有县一级的话,是数据不规范,但是先将就着取省一级和市一级. 要实现这个目的,第一是要从数据库里把相应的字段取出来, 第二是要写一个oracle截取字符串的函数处理下'籍贯'字段. 第一

《oracle每日一练》oracle截取字符的函数

转载 在Oracle中 可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符. 在一个字符串中查找指定的字符,返回被查找到的指定的字符的位置. 语法: instr(sourceString,destString,start,appearPosition) instr('源字符串' , '目标字符串' ,'开始位置','第几次出现') 其中sourceString代表源字符串: destString代表要从源字符串中查找的子串: start代表查找的开始位置,这个参数可选的,默认为

Oracle截取字符串和查找字符串,联合使用截取特定字符

oracle 截取字符(substr),检索字符位置(instr) case when then else end语句使用 收藏 常用函数:substr和instr1.SUBSTR(string,start_position,[length])    求子字符串,返回字符串解释:string 元字符串       start_position   开始位置(从0开始)       length 可选项,子字符串的个数For example:substr("ABCDEFG", 0); /