use regex with Unicode set

Unicodesetを使ってひらがなにマッチする。

pythonで日本語判定、カタカナ判定とかするときにはUnicodeSetが便利。

Pythonでカタカナだけを抜き出したいとき

複数ある文字列の中から、カタカナだけを抜き出す場合は自作の正規表現を書くのもいいけども、 パッケージregexを使いUnicodeのscriptを使うと可読性も高くなり、便利。

標準モジュールではないのでpipでインストール
regex

pip install regex
    text = "あいうエオかきくけコさしすせソ"
    r = regex.compile(r"[\p{Script=Katakana}]+")
    res = r.findall(text)
    pprint.pprint(res)

こういうふうに書くと実行結果が

['エオ', 'コ', 'ソ']

regexで使えるコードブロックの参照先

https://util.unicode.org/UnicodeJsps/properties.jsp
このサイトのScript, blockってところをクリックすると表示される

https://util.unicode.org/UnicodeJsps/properties.jsp?a=Script#Script HiraganaとKatakanaがある。

覚えておこう。

connvoi's Picture

About connvoi

肉とビールと料理と写真とゲーム たまに技術 python / Solr / PHP / ansible

アマゾンセール情報サイト アマセール管理人

Jp, Tokyo https://connvoi.com