我想提取給定字符串的子字符串。 示例字符串是rta=0.037ms;3000.000;5000.000;0; pl=10%;80;100;; rtmax=0.125ms;;;; rtmin=0.012ms;
如何從java中的給定字符串中提取子字符串
我希望在「rta =」和pl =後的百分比之後只有0.037ms。我試圖用空格分隔上面的字符串,然後用分號分隔。不工作。
我想提取給定字符串的子字符串。 示例字符串是rta=0.037ms;3000.000;5000.000;0; pl=10%;80;100;; rtmax=0.125ms;;;; rtmin=0.012ms;
如何從java中的給定字符串中提取子字符串
我希望在「rta =」和pl =後的百分比之後只有0.037ms。我試圖用空格分隔上面的字符串,然後用分號分隔。不工作。
String s = "rta=0.037ms;3000.000;5000.000;0; pl=10%;80;100;; rtmax=0.125ms;;;; rtmin=0.012ms;";
Pattern pattern = Pattern.compile("rta=(.*?);.*pl=(.*?);");
Matcher matcher = pattern.matcher(s);
if(matcher.find()){
System.out.println(matcher.group(1));
System.out.println(matcher.group(2));
}
謝謝..我幾乎寫了相同的正則表達式,但錯過了分號。它再次表示感謝。 – Jes
String str = "rta=0.037ms;3000.000;5000.000;0; pl=10%;80;100;; rtmax=0.125ms;;;; rtmin=0.012ms;";
String[] parts = str.split(";");
String part1 = parts[0]; // rta=0.037ms
String part2 = parts[4]; // pl=10%
...
System.out.println(part1.substring(4)); // 0.037ms
System.out.println(part2.substring(4)); // 10%
寫一個正則表達式語句,或者使用string.spit()和分裂的空間 – ja08prat
的可能的複製 - (HTTPS [Java的最簡單的方法後子串裏面串來獲取來性狀]://計算器.com/questions/27346818/java-simplest-way-to-get-characters-that-come-after-substring-inside-string) –