2 回答

TA貢獻1828條經驗 獲得超6個贊
像這樣的事情怎么樣?本質上將 TIME_ID_CATEGORY 或 PAGE_IMPRESSION 匹配到組 1,并將其后的任何內容(即后綴)匹配為組 2。
(TIME_ID_CATEGORY|PAGE_IMPRESSION)(\w+)
然后只需將第 2 組的內容替換為空字符串即可?;蛘咧皇翘鎿Q為 Group 1,這也將消除后綴(請參見下面的代碼片段)。
示例代碼片段:
public static void main(String args[]) throws Exception {
String line = "WITH dataTab0 AS (SELECT TO_CHAR(to_date(tab_0_0.times),'YYYYMMDD') AS TIME_ID_CATEGORYe93bc60a0041,tab_0_0.request_id AS PAGE_IMPRESSIONf6beefc154b44e4b FROM full_contents_2";
Pattern p = Pattern.compile("(TIME_ID_CATEGORY|PAGE_IMPRESSION)(\\w+)");
Matcher m = p.matcher(line);
if (m.find()) {
String output = m.replaceAll("$1");
System.out.println(output);
//WITH dataTab0 AS (SELECT TO_CHAR(to_date(tab_0_0.times),'YYYYMMDD') AS TIME_ID_CATEGORY,tab_0_0.request_id AS PAGE_IMPRESSION FROM full_contents_2
}
}
添加回答
舉報