java中如何截取字符串最后一位
截取字符串最后一位
1.用substring()來截取
理論上它是按照字符串.substring(字符串.lastIndexOf("\\")+1)這個(gè)格式來的,但是在涉及到特殊符號(hào)時(shí)需要用\\來轉(zhuǎn)義,所以注意下。
例子:
public class Test { public static void main(String[] args) { String fileName="E:/eclipse_workspace1/FtpOperateFile/logs/IYinXin.log"; String newFileName=fileName.substring(fileName.lastIndexOf("/")+1); System.out.println("最后一個(gè)文件名為=====>"+newFileName); } }
效果圖:
2.用split()來截取
注:遇到特殊符號(hào)時(shí)需要用\\來轉(zhuǎn)義
例子:
public static void main(String[] args) { String fileName="E:/eclipse_workspace1/FtpOperateFile/logs/IYinXin.log"; //用/進(jìn)行切割 String[] spiltFileName=fileName.split("\\/"); //獲取最后一個(gè)文件名 String lastName=spiltFileName[spiltFileName.length-1]; System.out.println("最后一個(gè)文件名是=====>"+lastName); }
效果圖:
3.對(duì)在Windows下的目錄進(jìn)行截取最后一位
4.對(duì)linux下的目錄進(jìn)行截取最后一位
截取字符串的常見方法
工作中經(jīng)常遇到截取字符串的需求,介紹兩種常見的截取字符串方法。
常用方法
方法一:split(),此方法返回的是一個(gè)字符串?dāng)?shù)組類型;
方法二:substring(),進(jìn)行字符串截取。
常用方法介紹和應(yīng)用示例
**方法一:**通過split(),此方法返回的是一個(gè)字符串?dāng)?shù)組類型。
- 1.只傳一個(gè)參數(shù):split(String regex)
將正則傳入split(),根據(jù)給定正則表達(dá)式的匹配拆分此字符串。不過通過這種方式截取會(huì)有很大的性能損耗,因?yàn)榉治稣齽t非常耗時(shí)。
String str = "AB@CD"; String[] strs = str.split("@"); for(int i=0;i<strs.length;i++){ ? ? System.out.println(strs[i].toString()); }
運(yùn)行結(jié)果:
AB
CD
- 2.傳入兩個(gè)參數(shù):split(String regex,int limit)
regex – 正則表達(dá)式分隔符。
limit – 分割的份數(shù)。
將正則和份數(shù)傳入split()。根據(jù)給定正則表達(dá)式的匹配和想要分割的份數(shù)來拆分此字符串。
String str = "HelloWorld@qq@com"; String[] strs = str.split("@",2); for(int i=0;i<strs.length;i++){ ? ? System.out.println(strs[i].toString()); }
運(yùn)行結(jié)果:
HelloWorld
qq@com
**方法二:**通過subString()方法來進(jìn)行字符串截取
- 1.只傳一個(gè)參數(shù):subString(int beginIndex)
將字符串從索引號(hào)為beginIndex開始截取,一直到字符串末尾。(注意索引值從0開始);
String sb = "HelloWorld@qq.com"; String str = sb.substring(5); System.out.println(str);
運(yùn)行結(jié)果:
World@qq.com
- 2.傳入兩個(gè)參數(shù):substring(int beginIndex, int endIndex)
從索引號(hào)beginIndex開始到索引號(hào)endIndex結(jié)束(返回結(jié)果包含索引為beginIndex的字符不包含索引endIndex的字符),如下所示:
String sb = "HelloWorld@qq.com"; String str = sb.substring(0, 5); System.out.println(str);
運(yùn)行結(jié)果:
Hello
- 3.根據(jù)某個(gè)字符截取字符串
這里根據(jù)”@”截取字符串(也可以是其他子字符串)
String sb = "HelloWorld@qq.com"; String str = sb.substring(0, sb.indexOf("@")); System.out.println(str);
運(yùn)行結(jié)果:
HelloWorld
分析:indexOf(String str)方法返回的是子字符串第一次出現(xiàn)在字符串的索引位置,上面的代碼返回的是@前面的字符。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決SpringMVC項(xiàng)目連接RabbitMQ出錯(cuò)的問題
這篇文章主要介紹了解決SpringMVC項(xiàng)目連接RabbitMQ出錯(cuò)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01SpringBoot集成Sharding Jdbc使用復(fù)合分片的實(shí)踐
數(shù)據(jù)庫分庫分表中間件是采用的 apache sharding。本文主要介紹了SpringBoot集成Sharding Jdbc使用復(fù)合分片的實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下2021-09-09Java亂碼問題解決方法_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
開發(fā)java應(yīng)用出現(xiàn)亂碼是很常見的,畢竟現(xiàn)在unicode的使用還不是很廣泛,下面給大家分享Java亂碼問題解決方法,感興趣的朋友一起看看吧2017-07-07Java 使用Axis調(diào)用WebService的示例代碼
這篇文章主要介紹了Java 使用Axis調(diào)用WebService的示例代碼,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下2020-09-09MyBatis 實(shí)現(xiàn)數(shù)據(jù)的批量新增和刪除的操作
這篇文章主要介紹了MyBatis 實(shí)現(xiàn)數(shù)據(jù)的批量新增和刪除的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-02-02Spring Boot 中該如何防御計(jì)時(shí)攻擊
這篇文章主要介紹了Spring Boot 中該如何防御計(jì)時(shí)攻擊,幫助大家更好的使用spring boot框架,感興趣的朋友可以了解下2020-09-09Spring Cloud Feign實(shí)例講解學(xué)習(xí)
這篇文章主要介紹了Spring Cloud Feign實(shí)例講解學(xué)習(xí),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-02-02WebSocket整合SSM(Spring,Struts2,Maven)的實(shí)現(xiàn)示例
這篇文章主要介紹了WebSocket整合SSM(Spring,Struts2,Maven)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01