+ def words(self, string):
+ """Split the string into separate words.
+
+ This split is done using Unicode's definition of whitespace.
+ """
+ return string.split()
+
+ def sortemes(self, string):
+ return collate._strings.alnumsplit(string)
+
+ def sortemekey(self, string, invalid=float('inf')):
+ words = []
+ for sorteme in self.sortemes(string):
+ num, alpha = collate._strings.numeric(sorteme, invalid)
+ alpha = self.key(collate._strings.strip_punc(alpha))
+ words.append((num, alpha))
+ return words