import java.io.* ;         // Pour  BufferedReader
import regex.* ; // Pour Pattern et Matcher

class ReGrep {

  // Affiche les lignes de in dont un sous-mot est filtré par le motif p  
  static void grep(String p, BufferedReader in) throws IOException {
    Pattern pat = Pattern.compile(p) ;
    String line = in.readLine() ;
    while (line != null) {
      Matcher m = pat.matcher(line) ;
      if (m.find()) {
        System.out.println(line) ;
      }
      line = in.readLine() ;
    }
  }

  public static void main(String [] arg) {
    if (arg.length != 2) {
      System.err.println("Usage: java Grep motif fichier") ;
      System.exit(2) ;
    }
    try {
      BufferedReader in = new BufferedReader (new FileReader (arg[1])) ;
      grep(arg[0], in) ;
      in.close() ;
    } catch (IOException e) {
      System.err.println("Malaise: " + e.getMessage()) ;
      System.exit(2) ;
    }
  }
}
