ホームページ > バックエンド開発 > Python チュートリアル > Python の文字列から絵文字を削除するには?

Python の文字列から絵文字を削除するには?

Barbara Streisand
リリース: 2024-10-26 11:35:29
オリジナル
257 人が閲覧しました

How to Remove Emojis from Strings in Python?

Python で絵文字を扱う: 文字列から絵文字を削除する

Python の str.startswith() 関数は、実際に「xf.」で始まる絵文字を検索すると無効な文字エラーを生成します。 」ただし、Python の文字列から絵文字を効果的に削除する別の方法もあります。

Unicode 文字列と re.UNICODE フラグを使用する

Python 2 で絵文字を処理するには、次のようにします。 u'' リテラルを使用して Unicode 文字列を作成する必要があります。さらに、コンパイル中に re.UNICODE フラグを渡して Unicode サポートを有効にします:

<code class="python">import re

emoji_pattern = re.compile(
   u"[\U0001F600-\U0001F64F]"  # emoticons
   u"|\U0001F300-\U0001F5FF]"  # symbols &amp; pictographs
   u"|\U0001F680-\U0001F6FF]"  # transport &amp; map symbols
   u"|\U0001F1E0-\U0001F1FF]"  # flags (iOS)", flags=re.UNICODE)

text = u'This dog \U0001F602'
print(text) # with emoji
print(emoji_pattern.sub(r'', text)) # without emoji</code>
ログイン後にコピー

出力:

This dog ?
This dog
ログイン後にコピー

コンパイルされた正規表現の使用

もう 1 つの方法は、コンパイル済みの正規表現を使用することです。

<code class="python">emoji_patterns = [
   u"[\U0001F600-\U0001F64F]"  # emoticons
   u"|\U0001F300-\U0001F5FF]"  # symbols &amp; pictographs
   u"|\U0001F680-\U0001F6FF]"  # transport &amp; map symbols
   u"|\U0001F1E0-\U0001F1FF]"  # flags (iOS)]
emoji_pattern = re.compile(emoji_pat, flags=re.UNICODE)</code>
ログイン後にコピー

これらのパターンはすべての絵文字に一致するわけではないことに注意してください。より包括的なリストについては、Unicode 絵文字リストを参照してください。

以上がPython の文字列から絵文字を削除するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート