俺只有这种笨方法:用(/d) 或/d+ 获得所有数字的匹配,再把所有匹配项连起来。
用[a-zA-Z]+ 获得所有字母匹配,同上。
用[a-zA-Z]+ 获得所有字母匹配,同上。
解决方案 »
- C#如何实现在局域网时时监控本机的共享文件被访问情况
- WinForm远程连接服务器Access数据库,如何获取服务器系统当时间。
- 啥语言做桌面应用比较好
- 菜单栏问题
- 怎么得到DataGridView某个单元格改变之前的值?
- SqlDataAdapter ExecuteScalar ExecuteNonQuery 之间区别
- 图片存取的问题!!!
- 谁给我讲讲“委托”和“事件”关系!
- 寻求帮助-COMBOX输入框 内容限制问题
- 未将对象引用设置到对象的实例。
- 属性类Serializable可使一个类可序列化,但为什么没这个就不可序列化?属性类在此到底是起个什么作用?且该属性类是如何实现这种积极作用
- 谁能帮我解决一个关于NHibernate的问题
Match m;
string pattern;string chars = "";
string num = "";pattern = @"(?<Characters>[a-zA-Z]+)|(?<Numbers>\d+)";
r = new Regex( pattern );while ( m.Success )
{
chars += m.Groups[ "Characters" ].Value;
num += m.Groups[ "Numbers" ].Value;
}
string pat = @"
( # 第一个组的开始
abra # 匹配字符串abra
( # 第二个组的开始
cad # 匹配字符串cad
)? # 第二个组结束(可选)
) # 第一个组结束
+ # 匹配一次或多次
";
//利用x修饰符忽略注释
Regex r = new Regex(pat, "x");
//获得组号码的清单
int[] gnums = r.GetGroupNumbers();
//首次匹配
Match m = r.Match(text);
while (m.Success)
{
//从组1开始
for (int i = 1; i < gnums.Length; i++)
{
Group g = m.Group(gnums[i]);
//获得这次匹配的组
Console.WriteLine("Group"+gnums[i]+"=["+g.ToString()+"]");
//计算这个组的起始位置和长度
CaptureCollection cc = g.Captures;
for (int j = 0; j < cc.Count; j++)
{
Capture c = cc[j];
Console.WriteLine(" Capture" + j + "=["+c.ToString()
+ "] Index=" + c.Index + " Length=" + c.Length);
}
}
//下一个匹配
m = m.NextMatch();
}
string [] Split =LineString.Split(new char[] {' '});
Replace("'","")
{
System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex("-?([0]|([1-9]+\\d{0,}?))(.[\\d]+)?$");
return reg1.IsMatch(strVal);
}
用这个方法一个字符一个字符的传入。
如果是数字返回True
if(IsNumeric(“3”))
{是数字}