java 字串擷取的幾種方式

2021-08-08 19:54:35 字數 1653 閱讀 6039

1.split()+正規表示式來進行擷取。

將正則傳入split()。返回的是乙個字串陣列型別。不過通過這種方式擷取會有很大的效能損耗,因為分析正則非常耗時。

string str = "abc,12,3yy98,0";

string strs=str.split(",");

for(int i=0,len=strs.length;i

abc

123yy98

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

舉個例子,下面這個字串,取出來mycouponactivity

ios.yyvoucherviewcontroller

.android

.mycouponactivity?

jsonobject extrasjson = new jsonobject(extras);

log.i("extrasjson",extrasjson.tostring());

string back=extrasjson.optstring("url");

string top= back.substring(0,3);

log.i("topff",top);

string exittop=back.substring(6);

log.i("exittop",exittop);

// ios.yyvoucherviewcontroller

.android

.mycouponactivity?

string exitend= exittop.substring(0,exittop.indexof("?"));

log.i("exitend",exitend);

.android

.mycouponactivity

string strs=exitend.split("\\.");

string togoclass=strs[3].tostring();

intent intent2 =new intent(context, class.forname("com.yylc.yylearncar.view.activity.mine."+togoclass));

context.startactivity(intent2);

通過class.forname的方法,跳轉到介面上,但是必須是類的全路徑名稱

java 字串擷取的幾種方式

1.split 正規表示式來進行擷取。將正則傳入split 返回的是乙個字串陣列型別。不過通過這種方式擷取會有很大的效能損耗,因為分析正則非常耗時。string str abc,12,3yy98,0 string strs str.split for int i 0,len strs.length ...

集錦 java字串的擷取方式

1.split 正規表示式來進行擷取。將正則傳入split 返回的是乙個字串陣列型別。缺點 會有很大的效能損耗,因為分析正則非常耗時。string str abc,12def string strs str.split for int i 0 i strs.length i 執行結果 abc12de...

shell 擷取字串的幾種方式

shell 擷取字串通常有兩種方式 從指定位置開始擷取和從指定字元 子字串 開始擷取。從指定位置開始擷取 這種方式需要兩個引數 除了指定起始位置,還需要擷取長度,才能最終確定要擷取的字串。既然需要指定起始位置,那麼就涉及到計數方向的問題,到底是從字串左邊開始計數,還是從字串右邊開始計數。答案是 sh...