Help us understand the problem. What is going on with this article?

Web上のコンテンツや入力情報などが、英語か日本語か判別したいときのメモ

More than 5 years have passed since last update.

判別の仕方

rubyでは、正規表現で「ひらがな」「カタカナ」「漢字」をそれぞれ、

  • ひらがな:/\p{Hiragana}/
  • カタカナ:/\p{Katakana}/
  • 漢字:/[一-龠々]/

で表現できるので、とある文字列に日本語が含まれるかどうかの判定は以下で判別できる。

"#{text}" =~ /(?:\p{Hiragana}|\p{Katakana}|[一-龠々])/

念のためやってみる。

"test text desu" =~ /(?:\p{Hiragana}|\p{Katakana}|[一-龠々])/
=> nil


"test text です" =~ /(?:\p{Hiragana}|\p{Katakana}|[一-龠々])/
=> 10
#最初の日本語のindexを出力します。


"test テキスト desu" =~ /(?:\p{Hiragana}|\p{Katakana}|[一-龠々])/
=> 5


"test 試験 desu" =~ /(?:\p{Hiragana}|\p{Katakana}|[一-龠々])/
=> 5

はい、できた!

okappy
アトラエ取締役CTO兼yenta開発責任者やってます。 エンジニアの横の繋がりを大事にしたいので、何かあればfacebookで気軽にメッセージください。Qiitaの投稿に関することとかしないこととか、なんでもOKです。 http://www.facebook.com/toshi.oka.831
https://yenta.talentbase.io/yenta/?cn=qiita
atrae
People Techカンパニーとして、転職サイトGreen, ビジネスマッチングアプリyenta, 組織改善プラットフォームwevoxなどのサービスを運営。全ての社員が誇りを持てる組織と事業の創造にこだわり、関わる人々がファンとして応援したくなるような魅力ある会社であり続けることを目指しています。
http://atrae.co.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした