基于php 编写程序实现单词的查找,给定英文文本文件,统计其中包含某单词的个数。
时间: 2024-03-23 12:43:20 浏览: 93
以下是 PHP 中实现单词查找,给定英文文本文件,统计其中包含某单词的个数的示例代码:
```php
<?php
// 定义要查找的单词
$word = "hello";
// 打开文本文件
$file = fopen("text.txt", "r");
// 初始化计数器
$count = 0;
// 逐行读取文件内容,查找单词并统计
while (!feof($file)) {
// 读取一行内容
$line = fgets($file);
// 使用正则表达式查找单词并统计
$count += preg_match_all("/\b" . $word . "\b/i", $line, $matches);
}
// 关闭文件
fclose($file);
// 输出统计结果
echo "The word \"" . $word . "\" appears " . $count . " times in the text file.";
?>
```
以上代码中,我们首先定义要查找的单词 `$word`,然后打开文本文件并初始化计数器 `$count`。然后我们使用 `while` 循环逐行读取文件内容,使用正则表达式查找并统计单词出现的次数。最后输出统计结果。
需要注意的是,在正则表达式中,我们使用 `\b` 表示单词的边界,以确保我们查找到的是完整的单词。同时,使用 `i` 选项表示不区分大小写。
相关问题
编写程序实现,对给定的一段文本,分别统计其中中文字符、数字、英文字符,其他字符的个数,以字典形式给出统计清单。
text = input("请输入文本:")
result = {"中文字符":0, "数字":0, "英文字符":0, "其他字符":0}
for char in text:
if char.isdigit():
result["数字"] += 1
elif char.isalpha():
result["英文字符"] += 1
elif char.isascii():
result["其他字符"] += 1
else:
result["中文字符"] += 1
print(result)
请使用C/C++编写字母统计程序。要求统计给定(英文)文本文件中,各个字母出现的个数,以及单词个数和P(p)开头的单词数
#include <stdio.h>
#include <ctype.h>
int main() {
FILE *fp;
char filename[100], c;
int letter_count[26] = {0};
int word_count = 0, p_word_count = 0;
int in_word = 0;
// 获取文件名
printf("请输入要统计的文件名:");
scanf("%s", filename);
// 打开文件
fp = fopen(filename, "r");
if (fp == NULL) {
printf("文件打开失败!\n");
return 1;
}
// 逐个读取字符并统计
while ((c = fgetc(fp)) != EOF) {
if (isalpha(c)) { // 如果是字母
c = tolower(c); // 统一转为小写
letter_count[c - 'a']++; // 统计该字母出现次数
if (!in_word) { // 如果不在单词中
in_word = 1; // 进入单词
word_count++; // 单词数+1
if (c == 'p') { // 如果单词以P(p)开头
p_word_count++; // P(p)开头单词数+1
}
}
} else { // 如果不是字母
in_word = 0; // 退出单词
}
}
// 输出结果
printf("各个字母出现的个数:\n");
for (int i = 0; i < 26; i++) {
printf("%c: %d\n", 'a' + i, letter_count[i]);
}
printf("单词个数:%d\n", word_count);
printf("以P(p)开头的单词数:%d\n", p_word_count);
// 关闭文件
fclose(fp);
return 0;
}
阅读全文