Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import java.util.regex.*;
- import java.util.Scanner;
- public class ner
- {
- public static void main(String[] args) throws IOException
- {
- Pattern time = Pattern.compile("\\d{2}\\:\\d{2}(\\s|\\:\\d{2}) "
- + "| \\d{1,2}(pm|am) | "
- + "quarter\\spast\\s\\d{1,2} | half\\spast\\s\\d{1,2} | quarter\\sto\\s\\d{1,2}"
- + " 1\\sminute\\spast\\s\\d{1,2} | ([2-9]|[1-5]{1}[0-9]{1})\\sminutes\\spast\\s\\d{1,2}"
- + " 1\\sminute\\sto\\s\\d{1,2} | ([2-9]|[1-5]{1}[0-9]{1})\\sminutes\\sto\\s\\d{1,2}");
- Pattern date = Pattern.compile("\\d{1,2}\\/\\d{1,2}\\/\\d{1,4} | \\d{1,2}\\.\\d{1,2}\\.\\d{1,4} "
- + "| (1|21)st\\sof\\s(January|February|March|April|May|June|July|August|September|October|November|December)((\\s|\\,\\s)|\\d{1,4})"
- + "| 31st\\sof\\s(January|March|May|July|August|October|December)((\\s|\\,\\s)|\\d{1,4})"
- + "| (2|22)nd\\sof\\s(January|February|March|April|May|June|July|August|September|October|November|December)((\\s|\\,\\s)|\\d{1,4})"
- + "| (3|23)rd\\s/of\\s(January|February|March|April|May|June|July|August|September|October|November|December)((\\s|\\,\\s)|\\d{1,4})"
- + "| (5-20|24-30)th\\s/of\\s(January|March|April|May|June|July|August|September|October|November|December)(\\s|\\,\\s)\\d{1,4}"
- + "| (5-20|24-29)th\\s/of\\sFebruary(\\s|\\,\\s)\\d{1,4}");
- Scanner inputScanner = new Scanner (System.in);
- System.out.println("Which file do you want to gather input from?");
- File inputFile = new File(inputScanner.nextLine());
- System.out.println("Which file do you want to output to?");
- File outputFile = new File(inputScanner.nextLine());
- BufferedReader inputReader = new BufferedReader(new FileReader(inputFile));
- PrintWriter outputWriter = new PrintWriter(new FileWriter(outputFile));
- String line = inputReader.readLine();
- Matcher timeMatcher = time.matcher(line);
- Matcher dateMatcher = date.matcher(line);
- int dateCount = 0;
- int timeCount = 0;
- while (line != null)
- {
- while (dateMatcher.find())
- {
- dateCount++;
- }
- while (timeMatcher.find())
- {
- timeCount++;
- }
- outputWriter.write("Date match found " + dateCount + " times.\nTime match found " + timeCount + " times.");
- inputScanner.close();
- inputReader.close();
- outputWriter.close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement