Как применять на регулярных выражений на содержание

Этот совет Java иллюстрирует метод применения регулярных выражений от содержимого файла. Соответствующих процедур в java.util.regex требует, чтобы входной быть CharSequence объект. Этот совет реализует метод, который эффективно возвращает содержимое файла в CharSequence объект.


    // Converts the contents of a file into a CharSequence

    public CharSequence fromFile(String filenamethrows IOException {

        FileInputStream input = new FileInputStream(filename);

        FileChannel channel = input.getChannel();

    

        // Create a read-only CharBuffer on the file

        ByteBuffer bbuf = channel.map(FileChannel.MapMode.READ_ONLY, 0(int)channel.size());

        CharBuffer cbuf = Charset.forName("8859_1").newDecoder().decode(bbuf);

        return cbuf;

    }

Вот пример кода, использующего выше метода:


    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) {

    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>