匹配字符串的正则表达式

zhengmushang 研发  2017-11-01 05:56:20

var txt = "*****我的年龄是 50,身高是 170cm,体重是 70kg,*******";

如何匹配这个字符串,其中数字是可变的数字
...全文
376 7 点赞 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhengmushang 2017-11-06
Regex.IsMatch("*****我的年龄是500,身高是1700cm,体重是700kg,*******", @"我的年龄是\d+,身高是\d+cm,体重是\d+kg" , RegexOptions.Singleline)
  • 打赏
  • 举报
回复
tei333 2017-11-03
引用 2 楼 From_TaiWan 的回复:
@"我的年龄是\s*[1-9]\d*,身高是\s*[1-9]\d+cm,体重是\s*[1-9]\d*kg"
正解,如果你还需要把里面的数字匹配出来,只需要把数字匹配部分用圆括号括起来就行了
  • 打赏
  • 举报
回复
Dogfish 2017-11-03
            
var txt = "*****我的年龄是  50,身高是  170cm,体重是  70kg,*******";
var age = (txt.Split(new char[] {','})[0]).Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries)[1]);
  • 打赏
  • 举报
回复
Dogfish 2017-11-03
直接用split分2次就立马出来了。第一次是逗号,第二次是空格。
  • 打赏
  • 举报
回复
threenewbee 2017-11-02
其它照抄,数字用\\d+替代。
  • 打赏
  • 举报
回复
秋的红果实 2017-11-02
@"我的年龄是\s*[1-9]\d*,身高是\s*[1-9]\d+cm,体重是\s*[1-9]\d*kg"
  • 打赏
  • 举报
回复
guanyinsishengzi 2017-11-02
Split(',')逗号分隔,取后5位, Trim()去空格
  • 打赏
  • 举报
回复
相关推荐
发帖
C#
加入

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2017-11-01 05:56
社区公告

让您成为最强悍的C#开发者