日期:2014-05-16  浏览次数:20511 次

新手求教个正则表达式:提取字段里面的某个位置的数字!!!!!!!!!!!!!!!!
有个带有数字、字母和符号的字段,用正则表达式怎么提取其中某个位置的数字?
比如1@a45*9这个字段,我想提取第一个数字1,或者最后一个数字9,或者里面的某一个位置的数字,正则表达式该如何写?这个是个很菜鸟的问题,希望大家不要见笑,感谢!
------解决方案--------------------
在sql server中,好像不能写正则表达式的哈。


select substring('1@a45*9',1,1) '第一个数字1',
       substring('1@a45*9',7,1) '最后一个数字9'
/*
第一个数字1 最后一个数字9
1 9
*/

------解决方案--------------------
引用:
哦哦  感谢回复  不是用sql  就是单纯一个正则表达式的问题而已

如果是正则的话,试试
\d+(\.\d+)?
------解决方案--------------------
如果是c#的话,不需要增则的
string str = "1@a45*9";
            string strstart = str.Substring(0, 1);
            string strend = str.Substring(str .Length  - 1, 1);