Gem Mojinizer

Mojinizer là một gem dùng để convert giữa các hệ chữ hiragana, katakana và romaji. 1. Cài đặt Trong Ruby on the Rails, thêm dòng sau vào Gemfile sau đó bundle: # Gemfile gem 'mojinizer' 2. Cách dùng Các method được sử dụng để convert và detect đã được thêm vào class String sau khi

Mojinizer là một gem dùng để convert giữa các hệ chữ hiragana, katakana và romaji.

1. Cài đặt

Trong Ruby on the Rails, thêm dòng sau vào Gemfile sau đó bundle:

# Gemfile

gem 'mojinizer'

2. Cách dùng

Các method được sử dụng để convert và detect đã được thêm vào class String sau khi cài đặt gem. Do đó, ta có thể gọi thông qua String object’s method.

Các method dùng để convert:

  • Hiragana/katakana --> romaji (平仮名/片仮名 --> ロ-マ字 変換)
"つくえ".romaji #=> "tsukue""ツクエ".romaji #=> "tsukue"
  • Katakana/romaji--> hiragana (片仮名/ロ-マ字 --> 平仮名 変換)
"ツクエ".hiragana #=> "つくえ""tsukue".hiragana #=> "つくえ"
  • Hiragana/romaji --> katakana (平仮名/ロ-マ字 --> 片仮名 変換)
"つくえ".katakana #=> "ツクエ""tsukue".katakana #=> "ツクエ"
  • Hiragana --> katakana (平仮名 --> 片仮名 変換)
"つくえ".hira_to_kata #=> "ツクエ"
  • Katakana --> hiragana (片仮名 --> 平仮名 変換)
"ツクエ".kata_to_hira #=> "つくえ"
  • Hankaku --> zenkaku (半角 --> 全角 文字種変換)
"アロハ".han_to_zen #=> "アロハ""Aloha!".han_to_zen #=> "Aloha!"
  • Zenkaku --> hankaku (全角 --> 半角 文字種変換)
"アロハ".zen_to_han #=> "アロハ""Aloha!".zen_to_han #=> "Aloha!"
  • Zenkaku <--> hankaku normalization (全角 <--> 半角 文字規準化)
"アロハ!".normalize_zen_han #=> "アロハ!""「Aloha」".normalize_zen_han #=> "「Aloha」"
"ツクエ".han_to_zen.hiragana #=> "つくえ"
"ツクエ".han_to_zen.romaji #=> "tsukue"
"ツクエ".han_to_zen.romaji.upcase #=> "TSUKUE"
"ツクエ".han_to_zen.romaji.upcase.han_to_zen #=> "TSUKUE"

Các method dùng để kiểm tra

Các hàm detection giúp kiểm tra chuỗi truyền vào thuộc kiểu Hiragana, Katakana, … trả về giá trị true, false.

  • Cả chuỗi là kiểu Hiragana/Katakana ?
"アロハ".kana?#=> true"すし".kana?#=> true"Aloha".kana?#=> false"Let's eat すし".kana?#=> false"アロハ".katakana?#=> true"すし".katakana?#=> false"アロハ everybody".katakana?#=> false"アロハ".hiragana?#=> false"すし".hiragana?#=> true"Let's eat すし".hiragana?#=> false
  • Cả chuỗi là kiểu Kanji ?
""金曜日".kanji?#=> true"金曜日だよ".kanji?#=> false"It's Friday, 金曜日".kanji?#=> false
  • Cả chuỗi là chữ tiếng Nhật ?
"アロハ".japanese?#=> true"Let's eat すし".japanese?#=> false

Check chuỗi string có chữa kiểu chữ nào hay không, trả về true, false

  • Có chứa kana(hiragana/katakana) ?
"Let's eat すし".contains_kana?#=> true
  • Có chứa hiragana ? katakana?
"アロハ everybody".contains_katakana?#=> true"Let's eat すし".contains_katakana?#=> false"アロハ everybody".contains_hiragana?#=> false"Let's eat すし".contains_hiragana?#=> true
  • Có chứa kanji?
"金曜日だよ".contains_kanji?#=> true"It's Friday, Friday".contains_kanji?#=> false
  • Có chứa tiếng Nhật?
"Let's eat すし".contains_japanese?#=> true"It's Friday, Friday".contains_japanese?#=> false

Tài liệu dịch: https://github.com/ikayzo/mojinizer

Nguồn: viblo.asia

Bài viết liên quan

9 Mẹo lập trình Web “ẩn mình” giúp tiết kiệm hàng giờ đồng hồ

Hầu hết các lập trình viên (kể cả những người giỏi) đều tốn thời gian x

Can GPT-4o Generate Images? All You Need to Know about GPT-4o-image

OpenAI‘s GPT-4o, introduced on March 25, 2025, has revolutionized the way we create visual con

Khi nào nên dùng main, section, article, header, footer, và aside trong HTML5

HTML5 đã giới thiệu các thẻ ngữ nghĩa giúp cấu trúc nội dung web một cách có

So sánh Webhook và API: Khi nào nên sử dụng?

Trong lĩnh vực công nghệ thông tin và phát triển phần mềm, Webhook và API là hai th