1.split()+正则表达式来进行截取。

将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。

String str = "abc,12,3yy98,0";
String[] strs=str.split(",");
for(int i=0,len=strs.length;i<len;i++){
System.out.println(strs[i].toString());
}

运行结果:

abc
12
3yy98
0

2.通过subString()方法来进行字符串截取。

subString通过不同的参数来提供不同的截取方式

2.1只传一个参数

例如:

String sb = "bbbdsajjds";
sb.substring(2);

将字符串从索引号为2开始截取,一直到字符串末尾。(索引值从0开始);

2.2传入2个索引值

String sb = "bbbdsajjds";
sb.substring(2, 4);

从索引号2开始到索引好4结束(并且不包含索引4截取在内,也就是说实际截取的是2和3号字符);

运行结果如下:

bdsajjds
bd

3.通过StringUtils提供的方法

StringUtils.substringBefore(“dskeabcee”, “e”);
/结果是:dsk/
这里是以第一个”e”,为标准。

StringUtils.substringBeforeLast(“dskeabcee”, “e”)
结果为:dskeabce

这里以最后一个“e”为准。

demo:

String url2 ="http://192.168.123.83:80/test_tape/771/2017090613/20170906161932538841656.V3?AWSAccessKeyId=1VA98MUQO0Y0URCMO99x&Expires=4100688000&signature=mIspd3R076h%2F74iSHRmH5Q%2F2zGw%3D";
String filename="771.1001.xml"; String file= StringUtils.substringBeforeLast(filename, ".");
String url=url2.split("\\?")[0].split("\\//")[1];
String key = url.substring(url.indexOf("/", url.indexOf("/") + 1)+1);
String name = url.substring(url.lastIndexOf("/")+1); System.out.println("file:"+file);
System.out.println("url:"+url);
System.out.println("key:"+key);
System.out.println("name:"+name);

运行结果:

file:771.1001
url:192.168.123.83:80/test_tape/771/2017090613/20170906161932538841656.V3
key:771/2017090613/20170906161932538841656.V3
name:20170906161932538841656.V3

java 字符串截取的方法的更多相关文章

  1. mysql截取函数常用方法 即mysql 字符串 截取-- - 最后带上java字符串截取规则比较

    常用的mysql截取函数有:left(), right(), substring(), substring_index() 下面来一一说明一下: 1.左截取left(str, length) 说明:l ...

  2. Java字符串易错方法总结

    Java字符串易错方法总结 public String[] split(String regex) 和 public String[] split(String regex,int limit) li ...

  3. java 字符串截取的几种方式(转)

    众所周知,java提供了很多字符串截取的方式.下面就来看看大致有几种. 1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的 ...

  4. java 字符串截取 - 最后带上mysql字符串截取比较

    Java中的substring()方法有两个方法的重载,一个带一个参数的,一个带两个参数的. 第一种写法: substring(n);//从索引是n的字符开始截取,条件(n>=0,n<字符 ...

  5. java 字符串截取的几种方式

    1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时. String str = " ...

  6. js 字符串截取 substring() 方法、 substr() 方法、slice() 方法、split() 、join();

    三种 js 截取字符串的方法: substring() 方法: substr() 方法: slice() 方法: 1.:substring() 方法:string.substring(from, to ...

  7. java 字符串截取

    截取指定长度的字符串,如果超出就用more的内容来替换 截取的字节数,截取的时候,有可能会少截取一位(当最后一位是1个双字节的话,会少截取一个) public class Test {    publ ...

  8. Java 字符串截取函数 substring()

    在String中有两个substring()函数,如下: 一:String.substring(int start) 参数: start:要截取位置的索引 返回: 从start开始到结束的字符串 例如 ...

  9. Java 字符串截取问题

    编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如"我ABC"4 public class StringSplit  ...

随机推荐

  1. mysql实现经纬度计算两个坐标之间的距离

    DELIMITER $$CREATE DEFINER = CURRENT_USER FUNCTION `getDistance`(`lon1` float,`lat1` float,`lon2` fl ...

  2. 使用asp.net调用谷歌地图api

    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> ...

  3. bootstrap基础学习五篇

    bootstrap表格 Bootstrap 提供了一个清晰的创建表格的布局.下表列出了 Bootstrap 支持的一些表格元素: 标签 描述 <table> 为表格添加基础样式. < ...

  4. 开启mysql日志及若干问题

    今天学习了mysql日志功能,以前也有所了解,只不过没有深入的学习,所以趁着“余热”,把我从网上找到的资料与实践 结合起来,总结一下其基本用法.学习从来都不是无趣的,就看你怎么看待学习. 1.查看查询 ...

  5. EasyDarwin开发出相似于美拍、秒拍的短视频拍摄SDK:EasyVideoRecorder

    EasyVideoRecorder Github:https://github.com/EasyDarwin/EasyVideoRecorder EasyVideoRecorder作为一款短视频拍摄的 ...

  6. WPF - 绑定及惯用法(一)

    写在前面:这仍然是一些没有经过严格审阅的文字.虽然我的确执行了初稿.复稿以及审阅等一系列用以保证文章质量的方法,但是仍然担心其中是否有错误.希望您能帮助指出,以在下一次我在版本更新时进行修正.所有的错 ...

  7. freemarker3

    结束标签 可以在结束标签中忽略user_def_dir_exp 也就是说可以写</@>来代替</@anything> 循环变量 <@myRepeatMacro count ...

  8. Python+PyQt5:停靠组件QDockWidget的实现

    QMainWindow主窗体中放置停靠组件QDockWidget的实现流程: 第一步:创建QMainWindow窗体,这是承载QDockWidget的主体 第二步:创建QDockWidget组件实例, ...

  9. THINKPHP5判断当前浏览器请求方式

    作用 代码 是否为 GET 请求 if (Request::instance()->isGet()) 是否为 POST 请求 if (Request::instance()->isPost ...

  10. Django学习笔记第十二篇--关于自定义数据库字段数据类型

    一.需求背景: django的models模块提供了很多数据字段的数据类型field,但是总有写奇葩需求不能依靠默认字段满足,所以需要自定义数据数据库数据字段类型.所有的自定义field应该在app路 ...