View Javadoc

1   /*
2    * Fsgrep is a simple Java application which allows a user to
3    * search all files in a directory structure for lines matching
4    * a given pattern.  Its functionality is a combination of the
5    * Unix 'find' and 'grep' utilities.
6    * Visit [http://fsgrep.sourceforge.net/] for more information.
7    * 
8    * Copyright (C) 2003-2006 Murali Krishnan [murali_ca_us@users.sourceforge.net]
9    * 
10   * Fsgrep is free software; you can redistribute it and/or modify
11   * it under the terms of version 2 of the GNU General Public
12   * License as published by the Free Software Foundation.
13   * 
14   * Fsgrep is distributed in the hope that it will be useful,
15   * but WITHOUT ANY WARRANTY; without even the implied warranty of
16   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17   * GNU General Public License for more details.
18   * 
19   * You should have received a copy of the GNU General Public License
20   * along with Fsgrep (see the file named LICENSE.txt); if not, write
21   * to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
22   * Boston, MA  02111-1307  USA
23   */
24  
25  package mk.fsgrep.match;
26  
27  import java.util.regex.*;
28  
29  /***
30   * 
31   * 
32   * @author  Murali Krishnan
33   *
34   */
35  public class SgmlSearch extends CodeSearch {
36  
37      //------------------------------------------------------------
38      //- Class Variables
39  
40      public static final Pattern RE_PRINCIPLE_COMMENT = Pattern.compile("--");
41      //    public static final Pattern RE_BLOCK_COMMENT_START = Pattern.compile("<!--.*[//n//r]//z");
42      public static final Pattern RE_BLOCK_COMMENT_START = Pattern.compile("<!--.*(//n|//r//n|//r)//z");
43      public static final Pattern RE_BLOCK_COMMENT_END = Pattern.compile("^.*?-->");
44      public static final Pattern RE_BLOCK_COMMENT_ONELINE = Pattern.compile("<!--.*?-->");
45  
46  
47      //------------------------------------------------------------
48      //- Class Functions
49  
50  
51  
52      //------------------------------------------------------------
53      //- Instance Variables
54  
55  
56  
57      //------------------------------------------------------------
58      //- Constructors
59  
60  
61      //------------------------------------------------------------
62      //- Accessors
63  
64  
65  
66      //------------------------------------------------------------
67      //- Settors
68  
69  
70  
71      //------------------------------------------------------------
72      //- Private/Protected Utility Functions
73  
74  
75  
76      //------------------------------------------------------------
77      //- Public Interface Functions
78  
79  
80  
81      //------------------------------------------------------------
82      //- Class Interface Functions
83  
84      protected Pattern rePrincipleCommentPattern() {return RE_PRINCIPLE_COMMENT;}
85      protected Pattern reBlockCommentStart() {return RE_BLOCK_COMMENT_START;}
86      protected Pattern reBlockCommentEnd() {return RE_BLOCK_COMMENT_END;}
87      protected Pattern reBlockCommentOneLine() {return RE_BLOCK_COMMENT_ONELINE;}
88  
89  
90      //------------------------------------------------------------
91      //- Inner Classes
92  
93  
94  
95      //------------------------------------------------------------
96      //- Main
97  
98  
99  
100 }