C#如何提取字符串中第一组数

例如:这是一个32.5寸的液晶电视售价2000元需要提出32.5这个数值... 例如:这是一个32.5寸的液晶电视售价2000元
需要提出32.5这个数值
展开
 我来答
awalak
2012-11-06
知道答主
回答量:12
采纳率:0%
帮助的人:8.9万
展开全部
string str =“这是一个32.5寸的液晶电视售价2000元”
int number = 0;//变量number=0
string num = null;//申明变量num
foreach (char item in str)//遍历字符串里面的每个字符
{
if (item >= 48 && item <= 58)//如果是数字
{
num += item;//把数字取出来放到num中
}
}
number = int.Parse(num);//转变成数字类型
Console.WriteLine(number);//输出
追问
您这个 是数字全提出来了~并不是只提取第一组数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leon382
2012-11-06 · TA获得超过1064个赞
知道小有建树答主
回答量:1744
采纳率:0%
帮助的人:987万
展开全部
string pattern = @"(?<num>[\-]?(0|[1-9][0-9]*)[\.]?\d*)";
string tc = "这是一个32.5寸的液晶电视售价2000元";
Match m = Regex.Match(tc, pattern, RegexOptions.IgnoreCase | RegexOptions.Singleline);
if (m.Success)
{
var num = m.Groups["num"].Value;
}
追问
主要是前边数字可能是32.5 也可能是333.5 也可能是9.5 位数不确定
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hjywyj
2012-11-06 · TA获得超过2683个赞
知道大有可为答主
回答量:3030
采纳率:50%
帮助的人:1770万
展开全部
string str = "这是一个32.5寸的液晶电视售价2000元";
str = System.Text.RegularExpressions.Regex.Match(str, @"\d+(\.\d+)?").Value;
Console.WriteLine(str);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式