Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re: match utf8

by tobyink (Abbot)
on Nov 12, 2012 at 13:54 UTC ( #1003447=note: print w/replies, xml ) Need Help??

in reply to match utf8

Unless you're using an ancient version of Perl, \w should match any Unicode word character. According to perlre there are over 100,000 characters it matches.

use 5.010; use strict; use warnings; use utf8::all; my $string = "the café"; say "GOT: $1" if $string =~ /(\w{4})/;

Make sure your strings are being interpreted as character strings rather than byte strings though. (See perlunicode and utf8.)

perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Replies are listed 'Best First'.
Re^2: match utf8
by choroba (Chancellor) on Nov 12, 2012 at 14:05 UTC
    As shown here, locale can also influence the behaviour of qr/\w/. Using qr/\w/u should also help.
    لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ