4 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊
你需要的是,找到最后一個(gè)“T”,然后拆分:
StringToD.substring(StringToD.lastIndexOf("T") + 1)

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可以使用正前瞻來(lái)斷言數(shù)字,并使用正前瞻來(lái)斷言 。RaT
(?<=RaT)(?=\\d)
例如:
String str = "RaT15544"; for (String element : str.split("(?<=RaT)(?=\\d)")) System.out.println(element);

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超7個(gè)贊
為此,您可以使用帶有限制參數(shù)的正面前瞻。split(?=\\d)
僅在拆分方法參數(shù)中,發(fā)生的情況是正則表達(dá)式引擎消耗此 。因此,發(fā)生的兩個(gè)字符串拆分沒(méi)有 。為了避免消耗字符,我們可以使用非消耗性前瞻。TTT
(?=\\d)- 這將匹配遇到的第一個(gè)數(shù)字,但它不會(huì)消耗此數(shù)字
公共靜態(tài)空隙主(字符串[] 參數(shù)) {
String s = "RaT15544";
String[] ss = s.split("(?=\\d)", 2);
System.out.println(ss[0] + " " + ss[1]);
}

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊
下面可用于分別拆分字母和數(shù)字。regex
String StringToD = "RaT15544"; String[] parts = StringToD.split("(?<=\\d)(?=\\D)|(?<=\\D)(?=\\d)"); System.out.println(parts[0]); System.out.println(parts[1]);
添加回答
舉報(bào)