Java中s.charAt(index)用于提取字符串s中的特定字符操作
charAt(int index)方法是一個能夠用來檢索特定索引下的字符的String實(shí)例的方法.
charAt()方法返回指定索引位置的char值。索引范圍為0~length()-1.
如: str.charAt(0)檢索str中的第一個字符,str.charAt(str.length()-1)檢索最后一個字符.
警告:在字符串s中越界訪問字符是一種常見的程序設(shè)計(jì)錯誤。為避免此類錯誤要確保使用的下標(biāo)不會超過s.length()-1.
public class hash { public static void main(String[] args) { // TODO Auto-generated method stub String str = "This is yiibai"; // prints character at 1st location System.out.println(str.charAt(0)); // prints character at 5th location i.e white-space character System.out.println(str.charAt(4)); // prints character at 18th location System.out.println(str.charAt(6)); } }
結(jié)果如下:
補(bǔ)充知識:JAVA 提取字符串常用的兩種方法(subString、正則表達(dá)式)
1.通過subString()方法來對字符串進(jìn)行操作
subString()語法:
public String substring(int beginIndex)
或
public String substring(int beginIndex, int endIndex)
1、取得的字符串長度為:endIndex - beginIndex;
2、從beginIndex開始取,到endIndex結(jié)束,從0開始數(shù),其中不包括endIndex位置的字符
示例:
String str1="abdc686512ffsc1267d"; String substr1=str1.substring(4); //指定區(qū)間(不包括結(jié)束索引處) String substr2=str1.substring(4, 10); System.out.println("substr1="+substr1); System.out.println("substr2="+substr2); System.out.println("*****************************"); //結(jié)合使用indexOf()靈活截取示例 String str2="<![CDATA[3-4級]]>"; String cutstr=str2.substring(9, str2.indexOf("]]")); System.out.println("cutstr="+cutstr);
結(jié)果:
substr1=686512ffsc1267d
substr2=686512
*****************************
cutstr=3-4級
2.使用正則表達(dá)式+Pattern()和Matcher()
Pattern 類:
pattern 對象是一個正則表達(dá)式的編譯表示。Pattern 類沒有公共構(gòu)造方法。要創(chuàng)建一個 Pattern 對象,你必須首先調(diào)用其公共靜態(tài)編譯方法,它返回一個 Pattern 對象。該方法接受一個正則表達(dá)式作為它的第一個參數(shù)。
Matcher 類:
Matcher 對象是對輸入字符串進(jìn)行解釋和匹配操作的引擎。與Pattern 類一樣,Matcher 也沒有公共構(gòu)造方法。你需要調(diào)用 Pattern 對象的 matcher 方法來獲得一個 Matcher 對象。
完整示例
System.out.println("正則表達(dá)式:"); //正則表達(dá)式 String str2="<![CDATA[3-4級]]>"; String fengli="\\[CDATA\\[(.*?)\\]\\]>";//提取風(fēng)級的正則表達(dá)式 Pattern pafengli=Pattern.compile(fengli); Matcher matfengli = pafengli.matcher(str2); if(matfengli.find()) { cutstr = matfengli.group(1); //group為捕獲組 System.out.println("cutstr="+cutstr); } else System.out.println("沒找到");
正則表達(dá)式:
cutstr=3-4級
注意: String fengli="\\[CDATA\\[(.*?)\\]\\]>";中的斜杠為轉(zhuǎn)義標(biāo)志
以上這篇Java中s.charAt(index)用于提取字符串s中的特定字符操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Mybatis 實(shí)現(xiàn)一個搜索框?qū)Χ鄠€字段進(jìn)行模糊查詢
這篇文章主要介紹了Mybatis 實(shí)現(xiàn)一個搜索框?qū)Χ鄠€字段進(jìn)行模糊查詢,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01基于Java中的StringTokenizer類詳解(推薦)
下面小編就為大家?guī)硪黄贘ava中的StringTokenizer類詳解(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05詳解Java TCC分布式事務(wù)實(shí)現(xiàn)原理
這篇文章主要介紹了詳解Java TCC分布式事務(wù)實(shí)現(xiàn)原理,對分布式事務(wù)感興趣的同學(xué),一定要看一下2021-04-04SpringBoot個性化啟動Banner設(shè)置方法解析
這篇文章主要介紹了SpringBoot個性化啟動Banner設(shè)置方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-03-03Java Swing BoxLayout箱式布局的實(shí)現(xiàn)代碼
這篇文章主要介紹了Java Swing BoxLayout箱式布局的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Post請求參數(shù)是數(shù)組或者List時的請求處理方式
這篇文章主要介紹了Post請求參數(shù)是數(shù)組或者List時的請求處理方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05java 使用線程做的一個簡單的ATM存取款實(shí)例代碼
線程 Thread 類,和 Runable 接口 比較兩者的特點(diǎn)和應(yīng)用領(lǐng)域.可以,直接繼承線程Thread類。該方法編寫簡單,可以直接操作線程,適用于單重繼承情況,因而不能在繼承其他類,下面我們來看一個實(shí)例2013-08-08SpringMVC實(shí)現(xiàn)RESTful風(fēng)格:@PathVariable注解的使用方式
這篇文章主要介紹了SpringMVC實(shí)現(xiàn)RESTful風(fēng)格:@PathVariable注解的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11java swing實(shí)現(xiàn)簡單計(jì)算器界面
這篇文章主要為大家詳細(xì)介紹了java swing實(shí)現(xiàn)簡單計(jì)算器界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04