Add the following code to your project's shard.yml under:
to use in production
- OR -
development_dependencies to use in development
Identify the Unicode block to which a character belongs.
This library can be used to identify the type of characters, and eventually filter them (for example emoticons).
In Unicode, a block is defined as one contiguous range of code points (https://en.wikipedia.org/wiki/Unicode_block).
Add the dependency to your
dependencies: unicode_blocr: github: j8r/unicode_blocr
To print the block range to which the character belongs:
require "unicode_blocr" puts UnicodeBlock.new 'a' #=> UnicodeBlock::BasicLatin puts UnicodeBlock.new 'é' #=> UnicodeBlock::Latin1Supplement
To keep all characters inferior to a block range, here
we delete all characters belonging to blocks above
require "unicode_blocr" puts "hi😊".delete &.ord.>= UnicodeBlock::EnclosedIdeographicSupplement.value #=> hi puts "café".delete &.ord.>= UnicodeBlock::BasicLatin.value #=> caf
Copyright (c) 2018-2019 Julien Reichardt - ISC License