======================================================================
 mb Cheat Sheet                                             [SI] සිංහල
======================================================================

[ 1. මොඩියුලය පූරණය කිරීම ]
  use mb;
  mb::set_script_encoding('utf8');

[ 2. අක්ෂර-පදනම් length / substr ]
  mb::length($str)              # අක්ෂර ගණන (bytes නොවේ)
  mb::substr($str, $pos, $len)  # අක්ෂර ස්ථානයෙන් substring

[ 3. string සෙවීම ]
  mb::index($str, $sub)         # අක්ෂර ස්ථාන දර්ශකය
  mb::rindex($str, $sub)        # දකුණු පසින් සෙවීම
  mb::index_byte($str, $sub)    # byte ස්ථාන දර්ශකය

[ 4. අක්ෂර පරිවර්තනය ]
  mb::uc($str)  mb::lc($str)  mb::ucfirst($str)  mb::lcfirst($str)

[ 5. අක්ෂර කේතය ]
  mb::ord($str)  mb::chr($n)

[ 6. අනෙකුත් මෙහෙයුම් ]
  mb::chop($str)   mb::reverse(@list)
  mb::getc(FH)     mb::tr($str,$from,$to)

[ 7. සහාය දක්වන කේතීකරණ ]
  utf8  sjis  eucjp  big5  big5hkscs  gbk  uhc  gb18030  rfc2279  wtf8

[ 8. උදාහරණය ]
  use mb;
  mb::set_script_encoding('utf8');
  my $s = "ආයුබෝවන්";
  printf "දිග=%d\n", mb::length($s);

[ 9. ධාවන කාල කේතාංක නිත්‍ය ප්‍රකාශනය (mb::qr) ]
  use mb qw(*mb utf8);
  $str =~ mb::qr(qr/./)         # "." කේතාංකයකට ගැළපේ
  $str =~ m{\G$mb{qr/(.)/}gc}   # tie ආකෘතියට සමානයි

[ 10. වලංගු බයිට් පරීක්ෂාව (mb::valid) ]
  mb::valid($octets)            # වලංගු නම් 1, නැතිනම් 0
                                # දැඩි, විකල්ප; කේතනය අනුව වෙනස් වේ

[ 11. කේතාංක මායිම් වල බෙදීම (mb::split) ]
  @f = mb::split(qr/,/, $csv)   # කේතාංක මායිම් වල බෙදයි

[ 12. ධාවනය කිරීමට ක්‍රම තුනක් (filter / modulino / runtime) ]
  use mb;                       # මාර්ගය 1: මූල පෙරහන (perl 5.8+)
  perl mb.pm script.pl          # මාර්ගය 2: modulino
  use mb qw(*mb utf8);          # මාර්ගය 3: ධාවන අතුරුමුහුණත
