[Python] 半角ASCII文字かを判定する
2010年3月10日
Pythonで、
「ある文字列が、半角文字列(*1)だけで構成されているか?」
の一般的なチェック方法を調べました。
「ある文字列が、半角文字列(*1)だけで構成されているか?」
の一般的なチェック方法を調べました。
(*1)
半角文字 = 通常そのまま表示する範囲のアスキーコードの文字
と、ここでは定義。
Googleソースコードを “python is_ascii” で検索
じゃあ、どうやって調べようというところで、
同僚から “is_asciiとか無いの?” の一言ヒントを得て
Googleソースコード検索で検索してみましたら、出てきた!出てきた!
同僚から “is_asciiとか無いの?” の一言ヒントを得て
Googleソースコード検索で検索してみましたら、出てきた!出てきた!
最初にヒットした2件は以下
chandler(? ごめん、詳細知らず)のis_ascii関数
def is_ascii(string):
"""return true if non ascii characters are detected in the given string
"""
if string:
return max([ord(char) for char in string]) < 128
return True
_ASCII_re = re.compile(r'\A[\x00-\x7f]*\Z')
def is_ascii_str(text):
return isinstance(text, str) and _ASCII_re.match(text)
シンプルに128未満=半角文字みたい
ちなみに、Googleソースコード検索についてメモ
・コードの一部分への直リンクもサポートしてるのが便利
・svnリポジトリへの直リンクはどこにあるんだろう?
・svnリポジトリへの直リンクはどこにあるんだろう?