2010-04-01 7 views
0

Je veux savoir comment coder pour obtenir seulement le lien de la chaîne en utilisant regex ou anyothers.obtenir une chaîne particulière en utilisant regex dans Java

ici ce qui suit est le code java:

String aas = "window.open("+"\""+"http://www.example.com/jscript/jex5.htm"+"\""+")"+"\n"+"window.open("+"\""+"http://www.example.com/jscript/jex5.htm"+"\""+")"; 

comment obtenir le lien http://www.example.com/jscript/jex5.htm

merci et avance

+0

Ce serait Javascript, pas Java. – Amber

+1

On dirait Java valide pour moi. – ponzao

Répondre

0

Le Regex

(?<=window.open\(")[^"]*(?="\)) 

correspond le lien dans la chaîne tu as donné. Il lit correctement échappé

"(?<=window.open\\(\")[^\"]*(?=\"\\))" 
0

Ce imprimera la première URL contenue dans la chaîne qui commence par "http: //":

public static void main(String[] args) throws Exception { 
    String javascriptString = "window.open(" + "\"" + "http://www.example.com/jscript/jex5.htm" + "\"" + ")" + "\n" + "window.open(" + "\"" 
     + "http://www.example.com/jscript/jex5.htm" + "\"" + ")"; 

    Pattern pattern = Pattern.compile(".*(http://.*)\".*\n.*"); 
    Matcher m = pattern.matcher(javascriptString); 

    if (m.matches()) { 
     System.out.println(m.group(1)); 
    } 
    } 
Questions connexes