我想從一個長字符串中提取2個特定的數據段。這兩個值都後「=」,但問題是我不能僅僅只是劈在每一個「=」,因爲一些數據,我需要包含這些以及數據:試圖將多個字符串解析爲1字符串
example: "{col1=RND393JKDN, col2=DJW//39ndo==8}
desired format: "RND393JKDN, DJW//39ndo==8"
下面是代碼我已經寫來解決這樣做,但另一件是,我不確定有多少列將被輸入的,所以我必須能夠處理列的未知量,如:"{col1=value1, col2=value2, col3=value3}"
for(int i = 0; i < finalResult.size(); i+=modval) {
//below forces the result to get stored in below variable as a String type
String resulttemp = finalResult.get(i).toString();
//below is only for
for(int z = 0; z < columnHeaders.size(); z++) {
String newStr=finalResult.get(i).replaceAll("\\[", "").replaceAll("\\]", "").replaceAll("\\{", "").replaceAll("\\}", "");
String newStr2;
String newStr3;
String find = "=";
newStr = (newStr.substring(newStr.indexOf(find)+find.length()));
newStr2 = (newStr.substring(newStr.indexOf(find)+find.length()));
newStr3 = (newStr2.substring(newStr.indexOf(find)+find.length()));
pw.printf("%s\n", newStr, newStr3);
}
}
也許查找模式'col1 =(? [^,] +)'(對每個col重複)以及之後的concat。 –
replaceAll接受一個正則表達式,那麼爲什麼不使用一個字符類而不是將方法鏈接在一起? –
@ cricket_007我最初使用replaceAll,因爲你提到,但它沒有正常工作。這只是一個膠帶修補程序,爲了解決我的問題 – dgelinas21