File size: 1,124 Bytes
4d5a6e9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
def word_reverse_text(input_text, lang='cn'):
if lang == 'cn':
user_text = input_text[::-1]
else:
words = input_text.split()
words.reverse()
user_text = ' '.join(words)
return user_text
def count_words(text: str, contain_punctuation: bool = False):
chinese_words = []
english_words = []
other_words = []
temp_english_words = []
for char in text:
if '\u4e00' <= char <= '\u9fff':
chinese_words.append(char)
if len(temp_english_words) > 0:
english_words.append(''.join(temp_english_words))
temp_english_words = []
else:
if char.isalpha():
temp_english_words.append(char)
else:
if len(temp_english_words) > 0:
english_words.append(''.join(temp_english_words))
temp_english_words = []
other_words.append(char)
if contain_punctuation:
return len(chinese_words) + len(english_words) + len(other_words)
else:
return len(chinese_words) + len(english_words)
|