-
Oracle中字符串截取最全方法总结
2018-08-30 18:10:42substr 函数:截取字符串 语法:SUBSTR(string,start,[length]) string:表示源字符串,即要截取的字符串。 start:开始位置,从1开始查找。如果start是负数,则从string字符串末尾开始算起。 length:可选项...-
substr 函数:截取字符串
语法:SUBSTR(string,start, [length])
string:表示源字符串,即要截取的字符串。
start:开始位置,从1开始查找。如果start是负数,则从string字符串末尾开始算起。
length:可选项,表示截取字符串长度。
示例:
SELECT SUBSTR('Hello SQL!', 1) FROM dual --截取所有字符串,返回'Hello SQL!' SELECT SUBSTR('Hello SQL!', 2) FROM dual --从第2个字符开始,截取到末尾。返回'ello SQL!' SELECT SUBSTR('Hello SQL!', -4) FROM dual --从倒数第4个字符开始,截取到末尾。返回'SQL!' SELECT SUBSTR('Hello SQL!', 3, 6) FROM dual --从第3个字符开始,截取6个字符。返回'llo SQ' SELECT SUBSTR('Hello SQL!', -4, 3) FROM dual --从倒数第4个字符开始,截取3个字符。返回'SQL'
-
instr 函数:返回子字符串在源字符串中的位置
语法:INSTR(string,child_string,[start],[show_time])
string:表示源字符串。
child_string:子字符串,即要查找的字符串。
start:可选项,开始位置,默认从1开始。如果为负数,则从右向左检索。
show_time:可选项,表示子字符串第几次出现在源字符串当中,默认第1次,负数则报错。
示例:
--表示从源字符串'city_company_staff'中第1个字符开始查找子字符串'_'第1次出现的位置 SELECT INSTR('city_company_staff', '_') FROM dual --返回5 --表示从源字符串'city_company_staff'中第5个字符开始查找子字符串'_'第1次出现的位置 SELECT INSTR('city_company_staff', '_', 5) FROM dual --返回5 --表示从源字符串'city_company_staff'中第5个字符开始查找子字符串'_'第1次出现的位置 SELECT INSTR('city_company_staff', '_', 5, 1) FROM dual --返回5 --表示从源字符串'city_company_staff'中第3个字符开始查找子字符串'_'第2次出现的位置 SELECT INSTR('city_company_staff', '_', 3, 2) FROM dual --返回13 --start参数为-1,从右向左检索,查找'_'字符串在源字符串中第1次出现的位置 SELECT INSTR('city_company_staff', '_', -1, 1) FROM dual --返回13 --start参数为-6,从右向左检索,查找'_'字符串在源字符串中第2次出现的位置 SELECT INSTR('city_company_staff', '_', -6, 2) FROM dual --返回5
-
substr 函数结合 instr 函数截取字符串
现有需求:数据查询处理需要对code进行"拆分"
code命名规则类似:城市_所属公司_员工职位_员工姓名
其中,城市、公司、职位、姓民字符串长度不固定,由于字符串长度不固定,只使用substr函数无法实现需求,需配合instr函数定位到字符'_'的位置,然后使用substr函数进行截取。详细见下面例子。
表数据如下:
SOURCE_CODE BJ_BAIDU_CEO_LY SH_BOKE_MANAGER_LWX HRB_WM_CASHIER_OYZY 获取城市:
SELECT SUBSTR (SOURCE_CODE, 1, INSTR (SOURCE_CODE, '_', 1, 1) - 1) AS CITY FROM TABLE_CODE_TEST
结果:
解释:此处截取源字符串SOURCE_CODE,从第1个字符开始,由于代表城市的code长度不固定,我们无法确定截取几个字符,所以使用instr函数判断第一个'_'字符的位置,进而确定每个SOURCE_CODE截取几个字符串。
那为什么减1呢?
是因为INSTR (SOURCE_CODE, '_', 1, 1)获取的是源字符串中'_'字符第一次出现的位置,再减1就得出了CITY字符个数。
获取公司:
SELECT SUBSTR ( SOURCE_CODE, INSTR (SOURCE_CODE, '_', 1, 1) + 1, INSTR (SOURCE_CODE, '_', 1, 2) - INSTR (SOURCE_CODE, '_', 1, 1)-1 ) AS COMPANY FROM TABLE_CODE_TEST
结果:
解释:截取源字符串,从(第一个'_'出现位置+1)开始,截取个数为:第2个'_'出现位置减去第1个'_'出现位置,此时还多了一个下划线'_',再减去1即可得到代表公司字符串。
获取姓名:
SELECT SUBSTR (SOURCE_CODE, INSTR (SOURCE_CODE, '_', 1, 3) + 1) AS STF_NAME FROM TABLE_CODE_TEST
结果:
解释:截取源字符串,从('_'第3次出现位置+1)开始截取,截取到末尾。
-
-
Java截取字符串的常见方法
2019-02-27 19:54:44在项目中经常会遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法。 方法一:通过split() 将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常...在我们日常工作中经常遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法。
方法一:通过split()
此方法返回的是一个字符串数组类型。
1.只传一个参数:split(String regex)
将正则传入split(),根据给定正则表达式的匹配拆分此字符串。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。
String str = "HelloWorld@qq.com";
String[] strs = str.split("@");
for(int i=0,i<strs.length;i++){
System.out.println(strs[i].toString());
}
运行结果:HelloWorld
qq.com2.传入两个参数:split(String regex,int limit)
-
regex -- 正则表达式分隔符。
-
limit -- 分割的份数。
将正则和份数传入split()。根据给定正则表达式的匹配和想要分割的份数来拆分此字符串。
String str = "HelloWorld@qq@com";
String[] strs = str.split("@",2);
for(int i=0,i<strs.length;i++){
System.out.println(strs[i].toString());
}
运行结果:HelloWorld
qq@com
方法二:通过subString()方法来进行字符串截取1、只传一个参数:subString(int beginIndex)
将字符串从索引号为beginIndex开始截取,一直到字符串末尾。(注意索引值从0开始);String sb = "HelloWorld@qq.com";
String str = sb.substring(5);
System.out.println(str);
运行结果:World@qq.com
2、传入两个参数:substring(int beginIndex, int endIndex)
从索引号beginIndex开始到索引号endIndex结束(返回结果包含索引为beginIndex的字符不包含索引endIndex的字符),如下所示:String sb = "HelloWorld@qq.com";
String str = sb.substring(0, 5);
System.out.println(str);
运行结果:Hello
3、根据某个字符截取字符串
这里根据”@”截取字符串(也可以是其他子字符串)String sb = "HelloWorld@qq.com";
String str = sb.substring(0, sb.indexOf("@"));
System.out.println(str);
运行结果:HelloWorld
分析:indexOf(String str)方法返回的是子字符串第一次出现在字符串的索引位置,上面的代码返回的是@前面的字符。参考原文出处:https://blog.csdn.net/zjx2016/article/details/74557301
-
-
Java中的substring截取字符串方法
2018-11-02 10:19:491. 在处理字符串的过程中有很多情况下会遇到需要截取字符串的情况,这个时候使用Java中提供的substring方法来截取就非常方便了 2. 其中比较经常使用到的方法有两个: ① public String substring(intbeginIndex) ...1. 问题描述
在处理字符串的过程中有很多情况下会遇到需要截取字符串的情况,这个时候使用Java中提供的substring方法来截取就非常方便了
2. 其中比较经常使用到的方法有两个:
① public String substring(int beginIndex)
这个方法截取的字符串是从索引beginIndex开始的,到整个字符串的末尾,例如:字符串String s = "abcdef";
调用s.substring(2)表示从字符串的索引2开始截取到整个字符串结束,截取的字符串为cdef
② public String substring(int beginIndex, int endIndex)
这个方法截取的字符串从beginIndex开始,到字符串索引的endIndex - 1结束,即截取的字符串不包括endIndex这个索引对应的字符,所以endIndex的最大值为整个字符串的长度,所以使用这个方法的时候需要特别注意容易发生字符串截取越界的问题
3. 下面是具体的代码:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); System.out.println(s.substring(0, 2)); System.out.println(s.substring(2)); sc.close(); } }
从控制台输入:saahdfasgfdga
-
python语法(二)——截取字符串的方法详解
2018-06-02 21:42:07python3+ print输出的内容要加括号str = '0123456789'print str[0:3] #截取第一位到第三位的字符print str[:] #截取字符串的全部字符print str[6:] #截取第七个字符到结尾print str[:-3] #截取从头开始到倒数第三个...下面是基于python2+版本;python3+ print输出的内容要加括号
str = '0123456789'
print str[0:3] #截取第一位到第三位的字符
print str[:] #截取字符串的全部字符
print str[6:] #截取第七个字符到结尾
print str[:-3] #截取从头开始到倒数第三个字符之前
print str[2] #截取第三个字符
print str[-1] #截取倒数第一个字符
print str[::-1] #创造一个与原字符串顺序相反的字符串
print str[-3:-1] #截取倒数第三位与倒数第一位之前的字符
print str[-3:] #截取倒数第三位到结尾print str[:-5:-3] #逆序截取
输出结果如下:
0120123456789678901234562998765432107878996 -
常用的字符串截取方法
2019-03-27 17:33:24字符串截取: 1 取字符串的前i个字符 str=str.substring(0,i); 2 去掉字符串的前i个字符 str=str.substring(i); 3 从右边开始取i个字符 str=str.substring(str.length()-i); str=str.substring(str.length()-i,str.... -
python字符串截取子串
2018-04-10 15:33:49在python中没有类似sub()或者subString()的方法,但是字符串的截取操作却是更加简单。 只需要把字符串看作是一个字符数组,截取子串非常方便。 多余的话就不啰嗦了,看下面的例子就明白了。 str = ’0123456789... -
SQL中字符串截取函数(SUBSTRING)
2018-08-02 18:44:071、left(name,4)截取左边的4个字符 列: SELECT LEFT(201809,4) 年 结果:2018 2、right(name,2)截取右边的2个字符 SELECT RIGHT(201809,2) 月份 结果:09 3、SUBSTRING(name,5,3) 截取name这个字段 从第... -
ClearCase截取
2019-01-09 17:00:51一直没搞懂截取的概念 截取就是想修改本地的文件内容,但是不想上传到CC服务器,这种时候就可以用截取。 比如一些本地配置文件,为了测试而临时修改的文件 ... -
MySQL 字符串截取函数,字段截取,字符串截取
2019-02-16 13:49:59MySQL 字符串截取函数:left(), right(), substring(), substring_index()。还有 mid(), substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。 1. 字符串截取:left(str,... -
Python中的字符串切片(截取字符串)
2018-09-17 23:20:16字符串切片也就是截取字符串,取子串 Python中字符串切片方法 字符串[开始索引:结束索引:步长] 切取字符串为开始索引到结束索引-1内的字符串 步长不指定时步长为1 字符串[开始索引:结束索引] 练习样例 # 1.... -
xml截取
2016-05-13 00:05:35xml截取 -
Python中字符串截取
2019-06-19 13:38:59...print str[0:3] #截取第一位到第三位的字符 print str[:] #截取字符串的全部字符 print str[6:] #截取第七个字符到结尾 print str[:-3] #截取从头开始到倒数第三个字符之前 print str[2] #... -
字符串的反向截取和正向截取
2019-12-27 17:47:31步长为正即为正向截取,正向截取的起始索引小于结束索引,步长不写默认为1如str1=“qwertyu”,str1[0:4:2]意思就是从第一个元素q开始截取,到元素t之间,每隔两个元素截取一个,结果为qe 反向截取: 把步长设为负数... -
JAVA String 截取字符串的方法(含 substring 索引截取示例)
2019-03-21 14:28:10String.substring( ):用于返回一个字符串的子串 用法如下:string.substring(from, to) 其中from指代要抽去的子串第一个字符在原字符串中的位置 ...1、string.substring(from):此时相当于从from位置截取到原字... -
Oracle 字符串截取 从后向前截取方法
2018-11-12 16:52:21Oracle 字符串截取 从后向前截取方法 -
【C++】代码实现:截取数组中的数据(方向:从左向右截取、从右向左截取;按指定比例截取数据)
2019-07-01 20:19:58代码实现:截取数组中的数据(方向:从左向右截取、从右向左截取;按一定比例截取数据)。 -
php字符串截取 及汉字截取
2019-03-13 10:00:25截取第一个斜杠前面的内容: echo substr($str,0,strpos($str, '/')) 或者:$array=explode('/', $str); 结果:echo $array[0];// 输出 123 截取第一个斜杠后面的内容 substr($str,strpos($str,'/')+1); //输出... -
Hive 字符串截取前两位和截取后两位
2020-04-09 09:38:35substr() 第一个参数表示待截取的字段名称,第二个参数表示截取的起始位置,第三个字段表示截取的长度。 2、截取后两位: substr(ID,-2,2) 表示从倒数第二个位置开始截取两位,即截取后两位。 以上,问题解决..... -
oracle截取
2017-04-17 15:25:21select substr(tim,5,4 ) from tbl_score_log(5:截取位置,4:从5截取到几个位置) instr('源字符串' , '目标字符串' ,'开始位置','第几次出现') -
PotPlayer 无损截取视频片段
2019-03-29 21:04:21PotPlayer 无损截取视频片段 1. 打开视频 2. 鼠标右键 -> 视频 -> 视频录制 -> 录制视频 3. 开始 -> 开始录制 默认使用 MKV,MP4 更为常见。 注意设置图像质量 **** kbps。 4. 点击开始之后,存储... -
VUE 常规截取和特殊字符之前之后截取
2020-06-23 16:32:271:平常使用的 let str = 'abcdef'; // 0 str = str.slice(0);//返回整个字符串 abcdef ...//截取第二个之后所有的字符 cdef str = str.substring(2);//截取第二个之后所有的字符 cdef str = str.subs -
oracle 时间截取,查询结果截取,替换
2018-08-13 14:16:08oracle 时间截取: trunc(sysdate)= trunc(sysdate,'dd')--截取掉时分秒,结果是2011-05-11 00:00:00 select trunc(sysdate,'mm') from dual; --截取月份,结果 2011-05-01 00:00:00 select trunc(sysdate,'yy')... -
Java字符串截取,截取某个字符之前或者之后的字符串
2020-12-07 10:01:16提示:java截取某个字符之前或者之后的字符串 文章目录一、java截取某个字符之前或者之后的字符串:1. 截取"_"之前字符串2. 截取"_"之后字符串二、截取正数第二个"_"后面的内容 一、java截取某个字符之前或者之后的... -
Mysql截取字符串
2019-01-16 14:26:09一、mysql截取字符串函数 1、left(str,index) 从左边第index开始截取 2、right(str,index)从右边第index开始截取 3、substring(str,index)当index>0从左边开始截取直到结束 当index&... -
subList截取List集合,每次截取10个
2019-12-18 13:57:12// 截取从start(包含)元素开始到end(不含)元素位置结束 list.subList(start,end); 用例: // 获取request中的集合数据,每次截取10个 List midList = request.getMidList(); int startIndex = 0; int endIndex; ... -
List集合截取
2018-05-22 18:25:41//截取从start元素开始到end元素位置结束。 // 截取前10个 list = list.subList(0, 10); >>>---------------------------------------------------<<< 学习资料... -
tp5字符串截取。
2018-08-10 11:08:05前端截取从后台传过来的数据(截取10个字符) {$d['title']|mb_substr=0,10,'utf-8'} 没有截取前: 截取后: -
php截取字符串|php截取字符串前几位|php截取中文字符串
2017-09-14 13:21:00截取字符串专题:php截取字符串函数,php 字符串长度,php截取字符串前几位 PHP截取中文字符串(mb_substr)和获取中文 =>http://www.q3060.com/list3/list117/22126.html php 截取字符串第一个字符和最后一个字符 ... -
MySQL字符串截取 和 截取字符进行查询
2017-02-20 10:28:03Mysql字符串截取 和 截取字符进行查询一、MySQL中字符串的截取 MySQL中有专门的字符串截取函数:其中常用的有两种:substring_index(str,delim,count) 和concat 1.substring_index(str,delim,count) 函数的使用... -
仿真波形截取
2020-06-27 11:06:38vcs仿真完成,对于生成的波形,截图其中一段,命令如下: ...上面命令中,source.fsdb是原始波形文件,10000ns 和 20000ns是截取波形的开始时间点与结束时间点,otuput.fsdb是截取出来的波形文件名。 ...