/usr/share/pyshared/aiml/Utils.py is in python-aiml 0.8.6-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | """This file contains assorted general utility functions used by other
modules in the PyAIML package.
"""
def sentences(s):
"""Split the string s into a list of sentences."""
try: s+""
except: raise TypeError, "s must be a string"
pos = 0
sentenceList = []
l = len(s)
while pos < l:
try: p = s.index('.', pos)
except: p = l+1
try: q = s.index('?', pos)
except: q = l+1
try: e = s.index('!', pos)
except: e = l+1
end = min(p,q,e)
sentenceList.append( s[pos:end].strip() )
pos = end+1
# If no sentences were found, return a one-item list containing
# the entire input string.
if len(sentenceList) == 0: sentenceList.append(s)
return sentenceList
# Self test
if __name__ == "__main__":
# sentences
sents = sentences("First. Second, still? Third and Final! Well, not really")
assert(len(sents) == 4)
|