编写程序,统计字符串中英文单词的个数
时间: 2023-08-25 07:04:33 浏览: 184
下面是一个简单的Python程序,可以统计字符串中英文单词的个数:
```python
import re
def count_words(text):
# 使用正则表达式匹配单词
words = re.findall(r'\b\w+\b', text)
# 统计英文单词个数
count = sum(1 for word in words if word.isalpha())
return count
# 测试程序
text = "Hello, world! This is a test string."
count = count_words(text)
print("There are", count, "English words in the text.")
```
程序中使用了正则表达式来匹配单词,然后使用isalpha()函数判断单词是否为英文单词,最后统计英文单词的个数。运行程序,输出如下:
```
There are 7 English words in the text.
```
需要注意的是,该程序只能统计纯英文单词,如果字符串中包含数字或符号,则不会被统计为单词。
相关问题
编写程序,统计字符串中英文单词的个数。以字典格式输出
下面是一个Python程序,可以统计字符串中英文单词的个数,并以字典格式输出每个单词出现的次数:
```python
import re
def count_words(text):
# 使用正则表达式匹配单词
words = re.findall(r'\b\w+\b', text)
# 统计英文单词个数
count_dict = {}
for word in words:
# 判断单词是否为英文单词
if word.isalpha():
# 统计单词出现次数
count_dict[word] = count_dict.get(word, 0) + 1
return count_dict
# 测试程序
text = "Hello, world! This is a test string."
count_dict = count_words(text)
print("The count of each word in the text is:")
for word, count in count_dict.items():
print(word, ":", count)
```
程序中使用了正则表达式匹配单词,然后使用字典来统计每个单词出现的次数。运行程序,输出如下:
```
The count of each word in the text is:
Hello : 1
world : 1
This : 1
is : 1
a : 1
test : 1
string : 1
```
需要注意的是,该程序只能统计纯英文单词,如果字符串中包含数字或符号,则不会被统计为单词。
输入一个字符串,编写程序,统计字符串中英文单词的个数。以字典格式输出
好的,以下是 Python 代码实现:
```python
import re
def count_words(text):
word_dict = {}
# 匹配所有的英文单词
words = re.findall(r'\b[A-Za-z]+\b', text)
for word in words:
if word not in word_dict:
word_dict[word] = 1
else:
word_dict[word] += 1
return word_dict
text = input("请输入一个字符串:")
word_dict = count_words(text)
print(word_dict)
```
这段代码中,我们使用正则表达式 `\b[A-Za-z]+\b` 来匹配所有的英文单词。然后遍历所有的单词,将其出现次数记录在字典 `word_dict` 中。最后输出字典即可。
注意:为了避免重复统计单词,我们使用了字典来记录每个单词出现的次数。
阅读全文