文字列にキリル文字が含まれているかどうかを確認する方法は?
例えば。
>>> has_cyrillic('Hello, world!')
False
>>> has_cyrillic('Привет, world!')
True
regex
いくつかの短い形式とともにUnicodeプロパティをサポートします。
>>> regex.search(r'\p{IsCyrillic}', 'Hello, world!')
>>> regex.search(r'\p{IsCyrillic}', 'Привет, world!')
<regex.Match object; span=(0, 1), match='П'>
>>> regex.search(r'\p{IsCyrillic}', 'Hello, wёrld!')
<regex.Match object; span=(8, 9), match='ё'>
正規表現を使用して、文字列にа-я, А-Я
の範囲の文字が含まれているかどうかを確認できます。
import re
def has_cyrillic(text):
return bool(re.search('[а-яА-Я]', text))
または、 キリル文字全体 と一致させることもできます。
def has_cyrillic(text):
return bool(re.search('[\u0400-\u04FF]', text))
これは、拡張されたキリル文字のアルファベット(will、ё、ёなど)にも一致します。