人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Objective-C において Unicodeの文字列に日本語がはいっているかどうか正確に判定したいのですが、ライブラリや方法が載っているサイトを紹介してください。
英語でもOKです。

●質問者: DaVinciWare
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Cherenkov
●250ポイント

Objective-Cで正規表現を使う その1 - As Sloth As Possible
iOS 3.2以降はNSRegularExpressionSearch、iOS 4以降はNSRegularExpressionが使えます。

ライブラリを用いる方法:
iPhoneアプリで正規表現を使う - 24/7 twenty-four seven
を参考に RegexKitLite を導入する。


日本語判定:

/[ー、。]|[ぁ-ヶ]|[々〇\u303B\u3400-\u9FFF\uF900-\uFAFF]|[\uD840-\uD87F][\uDC00-\uDFFF]/
上のを16進にしたもの
/[\u30FC\u3001\u3002]|[\u3041-\u30F6]|[\u3005\u3007\u303B\u3400-\u9FFF\uF900-\uFAFF]|[\uD840-\uD87F][\uDC00-\uDFFF]/
全角のひらがなカタカナ、漢字、その他 にマッチするか判定。

その他:
ー: \u30FC
、: \u3001
。: \u3002
ぁ: \u3041
ヶ: \u30F6
々: \u3005
〇: \u3007
漢字の踊り字: \u303B

Source for ”goodbye japanese” - Userscripts.org

日本語をブラックリストにするよりも英数字ならOKといったホワイトリストな実装の方がいいと思いますが。


DaVinciWareさんのコメント
ありがとうございます。参考にします。

2 ● 蝸牛角上争何事
●250ポイント

質問でおっしゃられている「日本語」が所謂全角文字なのかキリル文字やハングル文字を日本語以外とするのかが分からなかったのですが全角かどうかの判定という意味では以下のページが参考になるかと思います。
NSStringの全角/半角バリデーションチェック - Over&Out その後

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ