查找 HTML 文件中字符串的确切出现位置
我想找到字符串精确匹配的计数 假设字符串是“我的电脑”。我想找到它在字符串中的出现
这是我的电脑,这是一台好电脑,
这是我的电脑,这是我的电脑
所以最后我将得到 Count 2 ,
我尝试了以下公式 ' mykeyWord' 作为要查找的字符串。
int strength = (innerDocument.DocumentNode.InnerText.Length - innerDocument.DocumentNode.InnerText.ToLower().Replace(mykeyWord.ToLower(), "").Length) / mykeyWord.Length;
但它也会计算像“我的电脑”这样的错误字符串。
I would like to find the count of Exact match of string
Let suppose string is 'My Computer'. I want to find it,s occurrence in string
This is My computer,this is a good Computer,
this is my Computer,this is my Computers
So at end I shall get Count 2 ,
I have tried the following formula with 'mykeyWord' as string to be found.
int strength = (innerDocument.DocumentNode.InnerText.Length - innerDocument.DocumentNode.InnerText.ToLower().Replace(mykeyWord.ToLower(), "").Length) / mykeyWord.Length;
But it will also count strings like 'my Computers' that is wrong.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这是使用正则表达式的完美位置,就像您标记帖子一样:
This is a perfect place to use regular expressions, just as you tagged your post:
您可以使用正则表达式
[^Az](我的电脑)[^Az]
这会匹配“我的电脑”,但如果它位于“A to Z”之前或之后则不匹配。要使正则表达式搜索不区分大小写,请使用RegexOptions.IgnoreCase。编辑
minitech 使用单词边界的答案更好。
You could use the regular expression
[^A-z](my computer)[^A-z]
This matches 'my computer' but not if it's before or after 'A to Z'. To make the regex search case insensitive useRegexOptions.IgnoreCase
.Edit
minitech's answer using word boundaries is better.