1 # ====================================================================
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at
6 # http://www.apache.org/licenses/LICENSE-2.0
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13 # ====================================================================
16 # CharTokenizer limits token width to 255 characters, though.
17 # This implementation assumes keywords are 255 in length or less.
20 from lucene import PythonAnalyzer, PythonCharTokenizer
23 class SimpleKeywordAnalyzer(PythonAnalyzer):
25 def tokenStream(self, fieldName, reader):
27 class charTokenizer(PythonCharTokenizer):
28 def __init__(self, reader):
29 super(charTokenizer, self).__init__(reader)
30 def isTokenChar(self, c):
32 def normalize(self, c):
35 return charTokenizer(reader)