高手们帮我看看
string Week = "周一|周二|周三|周四|周五|周六|周日";
string WeekPattern="("+Week+")?"; GroupCollection time = Regex.Match(input, WeekPattern, RegexOptions.Compiled).Groups; for (int i = 0; i < time.Count; i++)
{
Response.Write("time[" + i + "].Value:" + time[i].Value + "<br/>");
}
若input为“周一”,输出的两个结果都为周一,
若input为“在周一”,输入的两个结果都为空,请问这是什么原因,该如何解决呢,
string Week = "周一|周二|周三|周四|周五|周六|周日";
string WeekPattern="("+Week+")?"; GroupCollection time = Regex.Match(input, WeekPattern, RegexOptions.Compiled).Groups; for (int i = 0; i < time.Count; i++)
{
Response.Write("time[" + i + "].Value:" + time[i].Value + "<br/>");
}
若input为“周一”,输出的两个结果都为周一,
若input为“在周一”,输入的两个结果都为空,请问这是什么原因,该如何解决呢,
解决方案 »
- vb 的语法
- 大家帮忙看个T-SQL语句问题?
- 找兼职
- FormsAuthentication.RedirectToLoginPage问题
- 100分求水晶报表的电子教程下载
- 在线问,上次没有解决的问题
- error while trying to run the project :unable to start debugging 启动不料这是什么问题?
- ©在VS.net中要怎样才能保存呢?
- 按钮点击只弹出一个窗口而不要刷新原来的页面怎么做?
- Iis 服务器发布之后flash和在线视频无法播放
- DataSourceid='<%ItemList %>' 服务器标记的格式不正确。
- datalist控件里 imagebutton控件的错误
这个问号去掉就可以了。
string WeekPattern="("+Week+")";
string WeekPattern="("+Week+")?";
我是想匹配Week不出现或出现一次啊
string strstrMusicTopContent = @"<td width=""17%"" height=""28"" bgcolor=""#FFFFFF"" class=""border""><a href=""(?<url>[^""]+)""[^>]*>";
MatchCollection MT = Regex.Matches(strMusicTopText, strstrMusicTopContent, RegexOptions.IgnoreCase | RegexOptions.Compiled);
foreach (Match mm in MT)
{
strTopArr[xxx] = mm.Groups["url"].Value.ToString().Trim(); }给你写个例子就知道了
而且你的Regex.Match( 是去到的第一个匹配 所以会出现空的情况
string Week = "周一|周二|周三|周四|周五|周六|周日";
string WeekPattern = "(" + Week + ")?";
string input = "在周二";
MatchCollection mc = Regex.Matches(input, WeekPattern, RegexOptions.Compiled);
for (int j = 0; j < mc.Count; j++)
{
GroupCollection time = mc[j].Groups;
for (int i = 0; i < time.Count; i++)
{
Response.Write("Match["+j+"] time[" + i + "].Value:" + time[i].Value + " <br/>");
}
}
我还想问一下:mc中,按索引值顺序,只要碰到第一个不是空的,那么这个是匹配整个字符串得到的结果,
这么理解对吧