python 判断字符串是否为中文数字
时间: 2023-12-25 20:29:58 浏览: 236
可以使用以下方法来判断字符串是否为中文数字:
1. 使用正则表达式匹配中文数字的模式。可以使用re模块的match()函数来进行匹配。
```python
import re
def is_chinese_number(string):
pattern = r'^[一二三四五六七八九十百千万亿零壹贰叁肆伍陆柒捌玖拾佰仟萬億〇]+$'
if re.match(pattern, string):
return True
else:
return False
print(is_chinese_number('一二三')) # 输出:True
print(is_chinese_number('123')) # 输出:False
print(is_chinese_number('一二三四五')) # 输出:True
print(is_chinese_number('一二三四五6')) # 输出:False
```
2. 使用Unicode编码范围判断字符是否为中文数字。可以使用ord()函数获取字符的Unicode编码,然后判断编码是否在中文数字的Unicode编码范围内。
```python
def is_chinese_number(string):
for char in string:
if ord(char) < 19968 or ord(char) > 40959:
return False
return True
print(is_chinese_number('一二三')) # 输出:True
print(is_chinese_number('123')) # 输出:False
print(is_chinese_number('一二三四五')) # 输出:True
print(is_chinese_number('一二三四五6')) # 输出:False
```
阅读全文