Вы можете вручную включить сопоставление Юникода , используя внутренний синтаксис (?u)
:
"föö".match(/(?u)(\w+)/)[1] == "föö"
# => true
Однако, используя синтаксис свойства Юникода (ответ steenslag) или синтаксис скобок POSIX - лучший стиль, поскольку они оба автоматически соблюдают кодовые точки Unicode:
"föö".match(/(\p{word}+)/)[1] == "föö"
# => true
"föö".match(/([[:word:]]+)/)[1] == "föö"
# => true
См. в этом блоге для получения дополнительной информации о сопоставлении символов Unicode в регулярных выражениях Ruby.