2012-02-23 15 views

答えて

4

ここには2つの方法があります。

def inital = "IPCM_20120223_xml.tar.gz" 

    def result1 = inital.replaceFirst("IPCM_", "USLF_") 
    def result2 = "USLF${inital.substring(4)}" 

    assert "USLF_20120223_xml.tar.gz" == result1 
    assert "USLF_20120223_xml.tar.gz" == result2 

最初の名前が生成される内容によっては、1つおきにすることもできます。

いつも "IPCM_"で始まり、その文字列は決して前のどこにもないことが分かっていれば良いでしょう。

あなたがいつも4文字のシーケンスで始まり、それが何であってもUSLFに変更したいと思っていれば、2番目の方法が良いでしょう。

+0

あなたがGroovyのを使用している場合は、< ' "USLF $ {initial.drop(4)}"'だけでなく –

+0

または ' "USLF $ {[..- 1 4]を初期}"'使用することができます1.8.1 – doelleri

+0

おっと、私は 'initial.substring(4)'がこれに相当しませんでした。 – doelleri

0
def inital = "IPCM_20120223_xml.tar.gz" 

def result3 = 'USLF'+inital-'IPCM' 
assert "USLF_20120223_xml.tar.gz" == result3 
関連する問題