2013-04-17 24 views
-2

这里计数是我的字符串 串countCommas = 12,34,56正则表达式限制charecters字符串中的

我要找的正则表达式算法如下

BOOL isCountExaclty2 =如果逗号(数字符串== 2){返回TRUE;}否则返回FALSE

我想右手表达式作为一个单一的REGEX表达式返回TRUE或FALSE但不是计数 (我知道使用Regex.COUNT..but它结束于2个陈述)

感谢

回答

0

如果你正在寻找一个模式,如果有字符串中正好有两个逗号,这将只匹配,这应该工作:

bool isCountExactly2 = Regex.IsMatch("12,34,56", "^([^,]*,){2}[^,]*$"); 

但正则表达式实际上并不是这份工作的正确工具。

+0

谢谢,那是什么我正在寻找。但什么是使用正则表达式的缺点。我是新使用正则表达式。请解释 –

+0

正则表达式很难写,甚至更难以阅读,这使得你的代码很难维护。它们也不一定是最快的选择,特别是对于这样的事情,您可以轻松地手动编写代码。 – Sven

0

试试这个:

string countCommas = "12,34,56" 
bool isCountExaclty2 = Regex.Split(countCommas, ",").Length == 2; 
+0

谢谢你的回复..但我正在寻找一个表达式来匹配..使用ISMATCH ..原因是我正在使用一些其他表达式结合这个表达式来匹配 –