to: swordragon(古道热肠) 不是没有规律,就是找出字符串中符合一个实型数或整型数的数字,如果找出 3.4.5.6这样的形势的话就只取3.4,后面的.5.6就不要了;当然.3.4.5的话就取.3就行了。
Match m = Regex.Match("", @"(\d+\.\d+|\d+|\.\d+)(?>.*)"); if(m.Success) { //m.Groups[1].Value }
var re = /^(\D*(?=\.\d)|\D*(?=\d)|\D*)(\d*\.?\d*).*$/i; var s = "a.bc.2.345BB45fd";alert(s.replace(re, "$2")); //返回.2 var s = "a.bc3.2.345BB45fd";alert(s.replace(re, "$2")); //返回3.2 var s = "a.bc333abcd45b";alert(s.replace(re, "$2")); //返回333 var s = "a.bc.dd";alert(s.replace(re, "$2")); //返回空字符串
public static string ConvertAtag24(string s) { Match m = Regex.Match(s, @"[^\d]*(\.\d|[^\.]*\d\.\d|[^\.\d]*\d+)"); if(m.Success) { return m.Groups[1].Value; } else { return ""; } }
//C#代码string s = "a.bc.2.345BB45fd"; string pattern = @"^(\D*(?=\.\d)|\D*(?=\d)|\D*)(\d*\.?\d*).*$"; System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(pattern, System.Text.RegularExpressions.RegexOptions.IgnoreCase); string result = reg.Replace(s, "$2");
"a.bc.2.345BB45fd" —— .2
"a.bc3.2.345BB45fd" —— 3.2
"a.bc333abcd45b" —— 333
不是没有规律,就是找出字符串中符合一个实型数或整型数的数字,如果找出
3.4.5.6这样的形势的话就只取3.4,后面的.5.6就不要了;当然.3.4.5的话就取.3就行了。
if(m.Success)
{
//m.Groups[1].Value
}
var s = "a.bc.2.345BB45fd";alert(s.replace(re, "$2")); //返回.2
var s = "a.bc3.2.345BB45fd";alert(s.replace(re, "$2")); //返回3.2
var s = "a.bc333abcd45b";alert(s.replace(re, "$2")); //返回333
var s = "a.bc.dd";alert(s.replace(re, "$2")); //返回空字符串
{
Match m = Regex.Match(s, @"[^\d]*(\.\d|[^\.]*\d\.\d|[^\.\d]*\d+)");
if(m.Success)
{
return m.Groups[1].Value;
}
else
{
return "";
}
}
string pattern = @"^(\D*(?=\.\d)|\D*(?=\d)|\D*)(\d*\.?\d*).*$";
System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(pattern, System.Text.RegularExpressions.RegexOptions.IgnoreCase);
string result = reg.Replace(s, "$2");