1# Copyright (c) 2002-2003, International Business Machines Corporation and 2# others. All Rights Reserved. 3# 4# Title Casing Break Rules 5# 6 7$CaseIgnorable = [[:Mn:][:Me:][:Cf:][:Lm:][:Sk:] \u0027 \u00AD \u2019]; 8$Cased = [[:Upper_Case:][:Lower_Case:][:Lt:] - $CaseIgnorable]; 9$NotCased = [^ $Cased]; 10 11# 12# If the iterator was not stopped on a cased character, advance it to the first cased char 13# 14$NotCased+; 15 16# 17# If the iterator starts on a cased item, advance through all adjacent cased items plus 18# any non-cased stuff, to reach the start of the next word. 19# 20$Cased ($Cased | $CaseIgnorable)* $NotCased*; 21 22# 23# Reverse Rules 24# 25 26! $NotCased+; 27 28# 29# If the iterator starts on a cased item, advance through all adjacent cased items plus 30# any non-cased stuff, to reach the start of the next word. 31# 32! $NotCased* ($Cased | $CaseIgnorable)* $Cased;