KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > tapestry > util > text > WhitespaceMatcher


1 // Copyright 2004, 2005 The Apache Software Foundation
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14

15 package org.apache.tapestry.util.text;
16
17 /**
18  * Matches a whitespace character.
19  *
20  * @author mb
21  * @since 4.0
22  */

23 public class WhitespaceMatcher implements ICharacterMatcher
24 {
25     private boolean _matchEndLines;
26     
27     /**
28      * Creates an object that matches all whitespace characters, line terminators included
29      */

30     public WhitespaceMatcher()
31     {
32         this(true);
33     }
34     
35     /**
36      * Creates an object that matches whitespace characters.
37      * Line terminators are included only if this is specified.
38      *
39      * @param matchEndLines match line terminators as well
40      */

41     public WhitespaceMatcher(boolean matchEndLines)
42     {
43         _matchEndLines = matchEndLines;
44     }
45     
46     /**
47      * Matches whitespace characters. Line terminators may be matched
48      * depending on the constructor used to create the object.
49      *
50      * @see org.apache.tapestry.util.text.ICharacterMatcher#matches(char)
51      */

52     public boolean matches(char ch)
53     {
54         if (!_matchEndLines)
55             if (ch == '\n' || ch == '\r')
56                 return false;
57         
58         return Character.isWhitespace(ch);
59     }
60 }
Popular Tags