读书人

Regex简单有关问题

发布时间: 2012-01-31 21:28:41 作者: rapoo

Regex简单问题.
匹配某些类型文件扩展名. 比如:
string str = "*.doc;*.ppt;*.rar;*.hdr; *.ex_; *.bin; *.exe; *.ini; *.inx; *.cab ";

要求用str作为参数生成一个Regex regEx2 = new Regex对象.
具体怎么写?



[解决办法]
sf


[解决办法]
可以用indexof()遍历.
[解决办法]
学习
[解决办法]
[.](doc|ppt)
后面的自己加上
-----------------------
CSDN 论坛助手
http://china-csdn.cn
[解决办法]
.(jpg|bmp|txt)^

还要设置匹配大小写
[解决办法]
或者楼主是不是想要这样一个效果

string yourStr = ............;
string str = "*.doc;*.ppt;*.rar;*.hdr; *.ex_; *.bin; *.exe; *.ini; *.inx; *.cab ";
string str2 = @ "^.*\.( " + Regex.Replace(str, @ ";?\s*\*\. ", "| ") + ")$ ";
Regex regEx2 = new Regex(str2);
if (regEx2.IsMatch(yourStr))
{
MessageBox.Show( "符合 ");
}
else
{
MessageBox.Show( "不符合 ");
}

输入:abc.doc  输出:符合
输入:E:\abc\def.bin  输出:符合
输入:cxz.jpg  输出:不符合
即检查扩展名是否包含在str所列扩展名中
[解决办法]
楼上的是正则专家,不用看也知道是正解,哈哈
[解决办法]
学习

读书人网 >asp.net

热点推荐