[C.C++] C#字符串如何提取数值(带小数点)

1676 0
王子 2023-5-12 09:04:11 | 显示全部楼层 |阅读模式
目录

    C#字符串提取数值(带小数点)C#从字符串中提取所有的数字并获得数字个数(正则表达式)总结


C#字符串提取数值(带小数点)



string input = "树2草45210.2m2";
if (GetInputUtil.GetString("\n请输入带数值的字符串:", input, out input))
{
    Regex r = new Regex(@"\d*\.\d*|0\.\d*[1-9]\d*$");
    string[] result = new string[] { r.Match(input).Value, r.Replace(input, "") };
    for (int i = 0; i < result.Length; i++)
    {
        ed.WriteMessage(string.Format("\n{0} = {1}", i, result));
    }
    ed.WriteMessage("\n---------------------------");
    // 0 = 45210.2
    // 1 = 树2草m2
}
C#从字符串中提取所有的数字并获得数字个数(正则表达式)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Text.RegularExpressions;
using System.Collections;
namespace 提取数字
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
    public static bool IsNumber(string s)
    {
      const string pattern = @"\d^]";
      Regex rx = new Regex(pattern);
      return rx.IsMatch(s);
    }
    private void button1_Click(object sender, EventArgs e)
    {
      string str = "ssdwq=1111111]dq=117549847580=11790]";
      string num = "";
      bool ha = false;
      ArrayList fig = new ArrayList();
      for (int i = 0; i < str.Length; i++)
      {
        if (IsNumber(str.ToString()))
        {
          num += str;
          ha = true;
        }
        else
        {
          if (ha)
          {
            fig.Add(long.Parse(num));
            num = "";
            ha = false;
          }
        }
      }
      //显示出来
      string show = "";
      for (int i = 0; i < fig.Count; i++)
      {
        show += fig + ",";
      }
      MessageBox.Show("数据数量:" + fig.Count + "\r 分别为:" + show);
    }
  }
}在winform中,只需要添加一个button按钮即可。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持中国红客联盟。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2025 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行