ファイルからテキストを読み込み、文字数を数える関数(python)


# ファイルからテキストを読み込み、文字数を数える関数
def count_characters_in_file(file_path, language="mixed"):
    with open(file_path, 'r', encoding='utf-8') as file:
        text = file.read()
    
    if language == "english":
        # 英語専用:アルファベットのみをカウント
        english_text = ''.join([char for char in text if char.isalpha()])
        return len(english_text)
    elif language == "japanese":
        # 日本語専用:ひらがな、カタカナ、漢字をカウント
        japanese_text = ''.join([char for char in text if '\u3040' <= char <= '\u30FF' or '\u4E00' <= char <= '\u9FFF'])
        return len(japanese_text)
    else:
        # 混在:全ての文字(空白や記号も含む)をカウント
        return len(text)

# ファイルパスと言語モードを指定して実行
file_path = 'example.txt'
language_mode = 'english'  # 'english', 'japanese', または 'mixed' を指定
character_count = count_characters_in_file(file_path, language_mode)
print(f"文字数: {character_count}")