2003-05-30 16:07:39 +00:00
|
|
|
# Copyright (c) 2002-2003, International Business Machines Corporation and
|
2002-12-06 01:40:42 +00:00
|
|
|
# others. All Rights Reserved.
|
2002-06-25 17:23:07 +00:00
|
|
|
#
|
|
|
|
# Title Casing Break Rules
|
|
|
|
#
|
|
|
|
|
|
|
|
$CaseIgnorable = [[:Mn:][:Me:][:Cf:][:Lm:][:Sk:] \u0027 \u00AD \u2019];
|
2003-05-20 18:45:43 +00:00
|
|
|
$Cased = [[:Upper_Case:][:Lower_Case:][:Lt:] - $CaseIgnorable];
|
2003-05-20 18:38:41 +00:00
|
|
|
$NotCased = [^ $Cased];
|
2002-06-25 17:23:07 +00:00
|
|
|
|
2003-05-21 20:07:41 +00:00
|
|
|
#
|
|
|
|
# If the iterator was not stopped on a cased character, advance it to the first cased char
|
|
|
|
#
|
2003-11-05 23:50:39 +00:00
|
|
|
$NotCased+;
|
2003-05-21 20:07:41 +00:00
|
|
|
|
2002-06-25 17:23:07 +00:00
|
|
|
#
|
|
|
|
# If the iterator starts on a cased item, advance through all adjacent cased items plus
|
2003-05-21 20:07:41 +00:00
|
|
|
# any non-cased stuff, to reach the start of the next word.
|
2002-06-25 17:23:07 +00:00
|
|
|
#
|
2003-05-21 20:07:41 +00:00
|
|
|
$Cased ($Cased | $CaseIgnorable)* $NotCased*;
|
2002-06-25 17:23:07 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
# Reverse Rules
|
|
|
|
#
|
|
|
|
|
2003-11-05 23:50:39 +00:00
|
|
|
! $NotCased+;
|
|
|
|
|
|
|
|
#
|
|
|
|
# If the iterator starts on a cased item, advance through all adjacent cased items plus
|
|
|
|
# any non-cased stuff, to reach the start of the next word.
|
|
|
|
#
|
|
|
|
! $NotCased* ($Cased | $CaseIgnorable)* $Cased;
|