2016-03-30 22 views
0

Tüm sahip olduğum SQL Insert ifadeleri. Ben yapmak istiyorum Insert uç noktalı virgülden caputre. Mesela:Java kullanarak SQL'de Yeniden Düzenleme

Insert blah INTO blah VAULES(blah);

Ben tüm bunları yakalamak gerekir.

Bu ^([^;]*) ifademi regex olarak kullanıyorum.

Bu benim Java kodu:

private String processFile(String data) { 
    StringBuilder retVal = new StringBuilder(); 
    Pattern pattern = Pattern.compile(REGEX); 
    Matcher matcher = pattern.matcher(data); 
    while (matcher.find()) { 
     String match = matcher.group(1); 
     match = match.replaceAll("\n", ""); 
     retVal.append(match).append(";\n"); 
    } 
    return retVal.toString(); 
} 

Ama sadece ilk geçtiği yakalamak gibi görünüyor. Hepsini nasıl yakalayabilirim?

cevap

2

Düzenli ifadeniz, yalnızca bir kez eşleşebilecek şekilde ^ dizgisi eşleştiricisinin başlatılmasını içerir.

Eğer birden fazla giriş eşleşme istiyorsanız

tekrarlar şey (gibi Insert anahtar kelime) ile dize Eşleştirici başlangıcını değiştirin:

Insert([^;]*)

+0

Serin, yaptığını. Teşekkürler – user489041

İlgili konular