Changeset 1909
- Timestamp:
- 02/04/2008 04:41:55 AM (11 months ago)
- Location:
- trunk/system/core/utf8
- Files:
-
- 4 modified
Legend:
- Unmodified
- Added
- Removed
-
trunk/system/core/utf8/ltrim.php
r1382 r1909 11 11 function _ltrim($str, $charlist = NULL) 12 12 { 13 if ($charlist === NULL OR utf8::is_ascii($charlist)) 14 { 15 return ($charlist === NULL) ? ltrim($str) : ltrim($str, $charlist); 16 } 13 if ($charlist === NULL) 14 return ltrim($str); 17 15 18 $charlist = preg_replace('#[-[\].:\\\\^/]#', '\\\\$0', $charlist); 16 if (utf8::is_ascii($charlist)) 17 return ltrim($str, $charlist); 19 18 20 // Try to support .. character ranges. If they cause errors, drop support. 21 $charlist_ranged = str_replace('\.\.', '-', $charlist); 22 $str_ranged = @preg_replace('/^['.$charlist_ranged.']+/u', '', $str); 19 $charlist = preg_replace('#[-\[\]:\\\\^/]#', '\\\\$0', $charlist); 23 20 24 return ($str_ranged !== NULL) ? $str_ranged :preg_replace('/^['.$charlist.']+/u', '', $str);21 return preg_replace('/^['.$charlist.']+/u', '', $str); 25 22 } -
trunk/system/core/utf8/rtrim.php
r1382 r1909 11 11 function _rtrim($str, $charlist = NULL) 12 12 { 13 if ($charlist === NULL OR utf8::is_ascii($charlist)) 14 { 15 return ($charlist === NULL) ? rtrim($str) : rtrim($str, $charlist); 16 } 13 if ($charlist === NULL) 14 return rtrim($str); 17 15 18 $charlist = preg_replace('#[-[\].:\\\\^/]#', '\\\\$0', $charlist); 16 if (utf8::is_ascii($charlist)) 17 return rtrim($str, $charlist); 19 18 20 // Try to support .. character ranges. If they cause errors, drop support. 21 $charlist_ranged = str_replace('\.\.', '-', $charlist); 22 $str_ranged = @preg_replace('/['.$charlist_ranged.']+$/u', '', $str); 19 $charlist = preg_replace('#[-\[\]:\\\\^/]#', '\\\\$0', $charlist); 23 20 24 return ($str_ranged !== NULL) ? $str_ranged : preg_replace('/['.$charlist.']+$/u', '', $str);21 return preg_replace('/['.$charlist.']++$/uD', '', $str); 25 22 } -
trunk/system/core/utf8/strrev.php
r1382 r1909 12 12 { 13 13 if (utf8::is_ascii($str)) 14 {15 14 return strrev($str); 16 }17 15 18 16 preg_match_all('/./us', $str, $matches); -
trunk/system/core/utf8/trim.php
r1382 r1909 11 11 function _trim($str, $charlist = NULL) 12 12 { 13 if ($charlist === NULL OR utf8::is_ascii($charlist)) 14 { 15 return ($charlist === NULL) ? trim($str) : trim($str, $charlist); 16 } 13 if ($charlist === NULL) 14 return trim($str); 17 15 18 16 return utf8::ltrim(utf8::rtrim($str, $charlist), $charlist);
