2016-04-11 16 views
0

Deneme uygulamamı dinamik olarak dinamik olarak oluşturmak için zorlamak istiyorum. Çalışması için herhangi bir yolu var mı? Ben soruyorum çünkü Pattern.quote() yöntemiyle denedim, ancak hiçbir etkisi yoktu.Dinamik olarak oluşturulmuş normal ifade Java

Regex'imi elbette String değişkenine koydum.

String pattern = "src=\\\"([^\\\"])*\\\\.((jpg)|(png)|(gif))\\\""; 
+1

Pattern.compile (dize değeri) Eğer dize içeriğini değiştirmek her zaman kullanın: benziyor. .. –

+2

Pattern.quote düzenli ifadeyi yorumlanabilir, yani dizgeni regeekssiz yapar. – dasblinkenlight

+0

Sorun şu ki, enum türünde ve desende dosya ifadelerini saklıyorum uygulamanın neden çalıştırıldığını oluşturmalısınız. –

cevap

0

inşa modelden "\" ekstra çıkarın ve Pattern.compile ve Pattern.matcher

 String pattern = "src=\"([^\"])*\\.((jpg)|(png)|(gif))\"";     
     Pattern p = Pattern.compile(pattern); 
     Matcher m = p.matcher("src=\"abc.png\""); 
     if (m.matches()){ 
      System.out.println("Found " + m.group()); 
     }