我想查找使用正则表达式在下面的句子中使用单词“亲爱的”的次数。有任何想法吗?所以在这个例子中,我应该得到4找到句子中的单词数
你好亲爱的朋友,这是一个字符串,其中包含字亲爱的重复;所以亲爱的,如果你能保持字亲爱的使用计数,这将是伟大
我想查找使用正则表达式在下面的句子中使用单词“亲爱的”的次数。有任何想法吗?所以在这个例子中,我应该得到4找到句子中的单词数
你好亲爱的朋友,这是一个字符串,其中包含字亲爱的重复;所以亲爱的,如果你能保持字亲爱的使用计数,这将是伟大
Regex reg = new Regex("\\bdear\\b", RegexOptions.IgnoreCase);
int count = reg.Matches(input).Count;
还是我失去了你的问题的东西吗?
我几乎很尴尬地说,虽然我认为会有这样一些简单的选择,但我尝试的第一件事是“[Dd] [Ee] [Aa ] [Rr]“... –
这并不折扣”最亲爱的“ – RichardTheKiwi
@driis你什么也没有丢失,只是懒得谷歌它:) – imak
正如你所说的那样,你不需要为此使用正则表达式。如果可以,通常应该使用字符串操作而不是正则表达式;在这种情况下,如果您的目标(您的示例中的dear
)将成为整个有效选择类别,则只需要它。
除非是这种情况,否则我建议使用字符串操作。一种可能性:
int count = source.ToLower().Split("dear").Length - 1;
我不必使用ToLower()
开到更有效率的版本,但对于大多数的目的,我不会担心。它应该比正则表达式更快。
5?你确定?不是4? –
我也在统计4. – driis
你是对的:( – imak