c# - 查找字符串(或子字符串)在大字符串中出现多少次的最佳方法 C#

标签 c# string

为了上学,我不得不做一个作业,我已经交了,但是我写的代码很糟糕,我不喜欢我最后的结果。所以,我很好奇,在 C# 中解决以下问题的最佳方法是什么:

'//4 “女王”在爱丽丝梦游仙境书中出现了多少次?写一些代码来计算它们。'

本书链接(pastebin):book

我的代码(pastebin):my code (ugly)

请在写答案时忽略我的代码。另外,请解释您的代码的作用,以及您认为它是最佳解决方案的原因。 “女王”这个词在书中出现的次数应该是76次。

最佳答案

我不会发布完整的代码,因为我认为将其作为练习对您很有用,但我个人会使用 IndexOf 寻求解决方案占据起始位置的重载。

类似(注意:故意不正确):

int startingPosition = 0;
int numberOfOccurrences = 0;
do {
  startingPosition = fullText.IndexOf("queen", startingPosition);
  numberOfOccurrences++;
} while( matchFound );

关于c# - 查找字符串(或子字符串)在大字符串中出现多少次的最佳方法 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33807926/

相关文章:

Swift - 删除重复的标点符号

java - 如何将二进制字符串转换为 int 数组?

c# - 从 VSPackage 获取 Visual Studio 配色方案

c# - 使用 C# 将默认值插入 SQL Server

c# - VS 2015 更新 3 vbcscompiler.exe 使用所有 cpu

c - c 中的管道消息被截断

c# - 为什么我不能将默认值分配给我的 notnull 泛型类型?

c# - 如何使用linq过滤SelectList

R:我的数据框有 2 列,每行都有一串数字,有没有办法拆分字符串并添加每列的值?

javascript - 修改现有的正则表达式以适应用空格替换 <nbsp;>