charAt(int index)方法是一個能夠用來檢索特定索引下的字符的String實例的方法.
charAt()方法返回指定索引位置的char值。索引范圍為0~length()-1.
如: str.charAt(0)檢索str中的第一個字符,str.charAt(str.length()-1)檢索最后一個字符.
警告:在字符串s中越界訪問字符是一種常見的程序設計錯誤。為避免此類錯誤要確保使用的下標不會超過s.length()-1.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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 )); } } |
結果如下:
補充知識:JAVA 提取字符串常用的兩種方法(subString、正則表達式)
1.通過subString()方法來對字符串進行操作
subString()語法:
public String substring(int beginIndex)
或
public String substring(int beginIndex, int endIndex)
1、取得的字符串長度為:endIndex - beginIndex;
2、從beginIndex開始取,到endIndex結束,從0開始數,其中不包括endIndex位置的字符
示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
String str1= "abdc686512ffsc1267d" ; String substr1=str1.substring( 4 ); //指定區間(不包括結束索引處) String substr2=str1.substring( 4 , 10 ); System.out.println( "substr1=" +substr1); System.out.println( "substr2=" +substr2); System.out.println( "*****************************" ); //結合使用indexOf()靈活截取示例 String str2= "<![CDATA[3-4級]]>" ; String cutstr=str2.substring( 9 , str2.indexOf( "]]" )); System.out.println( "cutstr=" +cutstr); |
結果:
substr1=686512ffsc1267d
substr2=686512
*****************************
cutstr=3-4級
2.使用正則表達式+Pattern()和Matcher()
Pattern 類:
pattern 對象是一個正則表達式的編譯表示。Pattern 類沒有公共構造方法。要創建一個 Pattern 對象,你必須首先調用其公共靜態編譯方法,它返回一個 Pattern 對象。該方法接受一個正則表達式作為它的第一個參數。
Matcher 類:
Matcher 對象是對輸入字符串進行解釋和匹配操作的引擎。與Pattern 類一樣,Matcher 也沒有公共構造方法。你需要調用 Pattern 對象的 matcher 方法來獲得一個 Matcher 對象。
完整示例
1
2
3
4
5
6
7
8
9
10
11
12
13
|
System.out.println( "正則表達式:" ); //正則表達式 String str2= "<![CDATA[3-4級]]>" ; String fengli= "\\[CDATA\\[(.*?)\\]\\]>" ; //提取風級的正則表達式 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( "沒找到" ); |
正則表達式:
cutstr=3-4級
注意: String fengli="\\[CDATA\\[(.*?)\\]\\]>";中的斜杠為轉義標志
以上這篇Java中s.charAt(index)用于提取字符串s中的特定字符操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/qq_38189320/article/details/100601183