c#中,如何通过正则表达式(或其他方法)获取字符串中数字?

c#中,如何通过正则表达式(或其他方法)获取字符串中数字?例如:北京天安门到人民大会堂向东走500.9434324米,在第二个路口向东走789.3434324324米;如... c#中,如何通过正则表达式(或其他方法)获取字符串中数字?例如:北京天安门到人民大会堂向东走500.9434324米,在第二个路口向东走789.3434324324米;如何获取这句话里的数字,并把这些数字转为整数或保留一位数字; 展开
 我来答
BraveHeart_Fov
2012-05-03 · TA获得超过7942个赞
知道小有建树答主
回答量:1037
采纳率:0%
帮助的人:683万
展开全部
截取字符串中数字类型的自定义函数
CREATE function dbo.F_Get_No
(
@No varchar(100)
)
RETURNS INT
AS
BEGIN
WHILE PATINDEX('%[^0-9]%',@No)>0
BEGIN
SET @No=STUFF(@No,PATINDEX('%[^0-9]%',@No),1,'')
END
RETURN CONVERT(INT,@No)
END

至于怎么格式化,相信你应该可以搞定
匿名用户
推荐于2018-05-07
展开全部
试试看:System.Text.RegularExpressions.Regex.Replace(yourstring, @"[^\d]*", "")
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友26feb5f
2012-06-05
知道答主
回答量:14
采纳率:0%
帮助的人:10.2万
展开全部
string strtest1 = textBox1.Text;//内容
string[] strtest2 = System.Text.RegularExpressions.Regex.Split(strtest1, @"[,。?:;!]");//分组
string[] strarry = new string[strtest2.Length];
for (int i = 0; i < strtest2.Length; i++)
{
strarry[i] = System.Text.RegularExpressions.Regex.Replace(strtest2[i], @"[^\d.]*", "");
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dangel424
2012-05-03 · 超过14用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:39.8万
展开全部
string strtest1 = textBox1.Text;//内容
string[] strtest2 = System.Text.RegularExpressions.Regex.Split(strtest1, @"[,。?:;!]");//分组
string[] strarry = new string[strtest2.Length];
for (int i = 0; i < strtest2.Length; i++)
{
strarry[i] = System.Text.RegularExpressions.Regex.Replace(strtest2[i], @"[^\d.]*", "");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
will_abcdefg
2012-05-03
知道答主
回答量:17
采纳率:0%
帮助的人:2.8万
展开全部
关注
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式