读书人

请问一下正则表达式

发布时间: 2012-04-02 19:58:59 作者: rapoo

请教一下正则表达式*
字符串:string sentence = "8"
正则表达式:string pattern = \d*

最后的匹配结果集合MatchCollection中,怎么元素个数是2个呢?明明只有一个匹配结果啊?


[解决办法]

string pattern = \d*

----->

Regex re = new Regex("\\d+", RegexOptions.None);
[解决办法]
\d*可以匹配""和数字,应改为\d+

\d*第一次贪婪匹配到8,第二次匹配8后面的位置,得到长度为0的字符串,所以有两个匹配项。
[解决办法]
参考这篇文章的开头部分:http://blog.csdn.net/lxcnn/article/details/4268033
[解决办法]
如果 用 \d* 去匹配 abc,你会发现有4个匹配项。

改成 \d+ 吧!
[解决办法]

探讨
是的啊,那么,诸如这类问题,需不需要问个为什么呢?本人刚接触正则表达式

读书人网 >C#

热点推荐