2017-04-26 51 views
-5

的動態列表替換特定的詞如何從字符串列表中取代「當前時間戳」包含「{TS‘2017年1月12日十六點09分20秒’}」 ts值爲每個字符串更改。如何從字符串

例如://需要更換舊的時間戳值的列表,以當前時間戳

private void replaceOldTimeStampToCurrentTimeStamp(){ 
    List<String>sampleString = new ArrayList<String>(); 
    sampleString.add("VALUES ('CODE','','DDC','DDC','',1,'01100',null,null,'Y','SD','PRODUCT','','','',2200,2603,{ts '2017-04-25 14:09:20'},'dba',{ts '2017-04-25 14:09:20'},'dba')"); 
    sampleString.add("VALUES ('TYPE','NW','New','New','',1,'01100',null,null,'Y','PRODUCT',null,'','',2200,2604,{ts '2017-01-12 16:09:20'},'dba',{ts '2017-01-12 16:09:20'},'dba')"); 
} 

所需的輸出:

VALUES( 'TYPE', 'NW','新','新','',1,'01100',null,null,'Y','PRODUCT',null,'','',2200,2604,當前時間戳,'dba',current時間戳,'dba')

VALUES(' CODE」, '', 'DDC', 'DDC', '',1, '01100',NULL,NULL, 'Y', 'SD', 'PRODUCT', '', '', '',2200 ,2603 當前時間戳, 'DBA',當前時間戳, 'DBA')

+0

還有,你試過這麼遠嗎?檢查基本的正則表達式教程。 – f1sh

+1

SO是一個問題和答案的網站,而不是請做我的工作 – freedev

+0

您可以開始檢查此方法:['String replaceAll(<正則表達式字符串>,<替換字符串>)](https://docs.oracle.com/ javase/8/docs/api/java/lang/String.html#replaceAll-java.lang.String-java.lang.String-)並檢查一個基本的Regex教程。這個方法也有各種各樣的問題。 – KarelG

回答

0

你可以嘗試成才這樣的:

private void replaceOldTimeStampToCurrentTimeStamp(){ 
    String ts = "current timestamp" //the value you want, a string value 
    List<String>sampleString = new ArrayList<String>(); 
    sampleString.add("VALUES ('CODE','','DDC','DDC','',1,'01100',null,null,'Y','SD','PRODUCT','','','',2200,2603,"+ts+",'dba',"+ts+",'dba')"); 
    sampleString.add("VALUES ('TYPE','NW','New','New','',1,'01100',null,null,'Y','PRODUCT',null,'','',2200,2604,"+ts+",'dba',"+ts+",'dba')"); 
} 
+0

該列表不包含只有兩個字符串值它包含200.您不能通過將ts值置於所有200.我需要一個替換方法來設置值。 –