×
Home About Us Products Services News Free Scripts Contact
news php scripts and software

JAVA example - How to Apply Regular Expressions on the Contents of a File?


JAVA - How to Apply Regular Expressions on the Contents of a File?

The matching routines in java.util.regex require that the input be a CharSequence object. This example implements a method that efficiently returns the contents of a file in a CharSequence object. 
    // Converts the contents of a file into a CharSequence
    // suitable for use by the regex package.
    public CharSequence fromFile(String filename) throws IOException 
    {
        FileInputStream fis = new FileInputStream(filename);
        FileChannel fc = fis.getChannel();
    
        // Create a read-only CharBuffer on the file
        ByteBuffer bbuf = fc.map(FileChannel.MapMode.READ_ONLY, 0, (int)fc.size());
        CharBuffer cbuf =     Charset.forName("8859_1").newDecoder().decode(bbuf);
        return cbuf;
    }

    Here is sample code that uses the method: 
    try 
{
        // Create matcher on file
        Pattern pattern = Pattern.compile("pattern");
        Matcher matcher = pattern.matcher(fromFile("infile.txt"));
    
        // Find all matches
        while (matcher.find()) 
  {
            // Get the matching string
            String match = matcher.group();
  }
} 

catch (IOException e)
 
   {

    }

Category: JAVA

 
<< Go back