关于模式匹配的正则表达式问题

时间:2014-03-03 22:29:39

标签: regex pattern-matching

我对正则表达式有疑问。 我有一个文本文件,其中包含以下形式的元网址:     www.abc.com/.services/     www.abc.com /. /无线

我想将该文件中的所有模式与我的URL进行比较,并在找到匹配项时执行操作。这个匹配过程对我来说很难理解。

假设splitarray [0]包含第一行文本文件:

            String url = page.getWebURL().getURL();         
            URL url1 = new URL(url);

我们怎样才能将url1与splitarray [0]进行比较?

已更新

BufferedReader readbuffer = null;
        try {
            readbuffer = new BufferedReader(new FileReader("filters.txt"));
        } catch (FileNotFoundException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        String strRead;


        try {
            while ((strRead=readbuffer.readLine())!=null){
                String splitarray[] = strRead.split(",");
                String firstentry = splitarray[0];
                String secondentry = splitarray[1];
                String thirdentry = splitarray[2];
                //String fourthentry = splitarray[3];
                //String fifthentry = splitarray[4];
                System.out.println(firstentry + " " + secondentry+ " " +thirdentry);
                URL url1 = new URL("http://www.abc.com/ship/reach/news-and");

                Pattern p = Pattern.compile("http://www.abc.com/.*/reach");
                Matcher m = p.matcher(url1.toString());

                if (m.matches()) {
                  //Do whatever
                    System.out.println("Yes Done");
                }



                }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 

但是,如果我想要任何以splitarray [0]中的模式开头的url。我该如何实现呢?

1 个答案:

答案 0 :(得分:0)

在查看本网站的一些示例后,我能够解决问题。

http://www.mkyong.com/java/how-to-read-and-parse-csv-file-in-java/