我需要一个代码来计算richtextbox行中有多少逗号。如果有4个或更多的逗号,然后做一些事情,否则删除行。计算一行中有多少“逗号”
回答
这是C#,但你可以做这样的事情:
int count = 0;
foreach(char c in string)
{
if(c == ',') count++;
}
return count;
你看这个:
string test = "abc,123,dfg";
int count = test.Split(',').length - 1;
对不起,我一个C#的家伙。下面是vb.net(我认为):
Dim test As String = "abc,123,dfg"
Dim count As Integer = test.Split(',').length - 1
Dim str As String = "Count, the, commas,,, !"
Dim count As Integer = 0
For Each c As Char In str
If c = "," Then
count += 1
End If
Next
投票了丹@需求的答案,这仅仅是VB.Net版本。
var str = "Count, the, commas,,, !";
var answer = str.Length - str.Replace(",", "").Length;
从技术上讲,'Replace'会导致不必要的变化在内存中。 – 2010-09-20 23:51:42
@Josh Stodola:是的,我刚刚发布了“另一种可能的方式来做到这一点” – zerkms 2010-09-20 23:53:40
这里的强制性LINQ答案:
Dim cnt As Integer = yourString.Count(Function(ch) ch = ","c)
+1 - 这些表达式看起来很酷!!!并占用了很多不动产 – 2010-09-20 23:49:23
然而,仅仅因为你看不到实现并不意味着它不会让你付出代价,在这种情况下,不是很糟糕;线性时间,对于一个“无序”索引集合来说,这是无法改进的。一个字符串,但是,有一些Linq单行程看起来非常优雅,但比有效的迭代解决方案慢几个数量级。 – KeithS 2010-09-21 00:24:27
if(new RegEx(",").Match(s).Matches.Count > 4){
//insert logic here
}
我这样做了我的头顶部,如果它不是完美的代码,所以不要杀我,但你的我在做什么的要点。您可以利用正则表达式来确切地告诉您有多少逗号,并在条件满足时执行所需的逻辑。
你丢失了源字符串 – zerkms 2010-09-20 23:52:42
点了,我更新了这个例子。我的原始观点依然存在。 – 2010-09-21 00:17:47
没有RegEx解决方案,任何问题都无法完成。 – 2010-09-21 00:55:00
- 1. 计算输入框中逗号分隔多少个字符串
- 2. 计算一个人有多少天?
- 3. 计算器中只有一个逗号/点! Objective-C for iPhone
- 4. Mysql - 计算有多少行有一定数量?
- 5. 计算文件中有多少行,不包括某些行
- 6. 如何计算一行有多少个不同的值?
- 7. 在每行中计算逗号并在文本文件中显示行号
- 8. Nodejs Array将逗号作为元素计算逗号
- 9. SMS中计算的“新行”(\ r \ n)有多少个字符?
- 10. MySQL的:计算两个表中有多少行是相同的
- 11. 计算有多少行通过javascript添加到表中
- 12. 计算功能被执行多少次
- 13. codechef每秒执行多少次计算?
- 14. 使用xpath计算逗号的数量
- 15. Ember计算属性添加逗号
- 16. Handsontable - 计算包含逗号的值
- 17. 计算,用逗号替换点
- 18. 带逗号的数字计算输出
- 19. HttpContext.Current调用后有多少计算?
- 20. 计算有多少连续值为真
- 21. 的Joomla - 计算用户有多少次
- 22. 计算有多少上下文切换
- 23. 如何计算一个数组中有多少个最大值?
- 24. 计算有多少用户有权限执行x操作?
- 25. 计算多少个字符
- 26. 计算多少分钟
- 27. 计算文本B中有多少文本A的算法?
- 28. 在一个NSMutableArray算多少唯一行
- 29. 计算一个程序(计划中)需要多少内存
- 30. wpf richtextbox检查插入符号是否在最后一行或计算它有多少行
我不知道哪个答案是最有效的。 – 2010-09-20 23:48:57
@Cristian Ciupitu:就我而言 - 在这种情况下,我宁愿选择最可读的:linq – zerkms 2010-09-20 23:50:50
@Cristian - 如果该行少于1,000个逗号,我认为性能不会成为任何他们。我个人认为@ Jay的回答是Rockinest! – 2010-09-20 23:51:03