为了账号安全,请及时绑定邮箱和手机立即绑定

C# 使用 REGEX 或不同的东西去除不需要的数据

C# 使用 REGEX 或不同的东西去除不需要的数据

C#
慕斯709654 2021-11-07 19:19:07
所以我想从一个字符串条数据,因为我有一个WPF“预置”输入,它看起来像__,___,现在用户必须输入类似30,589,但是当用户只给出了5或者50,它需要剥离休息(保持的,),以使propperly浮法输入值的。我现在的代码是这样的;if (inp_km.Text == "__,___"){    team_results.results[inp_tour_part.SelectedIndex].km =         float.Parse("00,000",                     NumberStyles.AllowDecimalPoint,                     CultureInfo.GetCultureInfo("nl-NL")); // Give the new value}else{    team_results.results[inp_tour_part.SelectedIndex].km =         float.Parse(inp_km.Text,                     NumberStyles.AllowDecimalPoint,                     CultureInfo.GetCultureInfo("nl-NL")); // Give the new value}但是这段代码只是检查输入是否留空......有人可以帮我吗?
查看完整描述

1 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

因此,您要检查输入是否采用以下两种形式之一:12,345或12:34。


这可以Regex很容易地使用。


static void Main(string[] args)

{

    var inputComma = "12,345";

    var inputColon = "98:76";

    Regex regexComma = new Regex(@"^\d{2},\d{3}$");

    Regex regexColon = new Regex(@"^\d{2}:\d{2}$");


    var matchComma = regexComma.Match(inputComma);

    if (matchComma.Success)

    {                

        Console.WriteLine(inputComma);

    }


    Console.WriteLine();


    var matchColon = regexColon.Match(inputColon);

    if (matchColon.Success)

    {

        Console.WriteLine(inputColon);

    }


    Console.ReadLine();

}

笔记:

您还没有完全阐明输入的有效格式。12,345如果存在逗号(即,两位数字后跟一个逗号,后跟三位数字),则以上将严格评估格式为真,而对于冒号,只有格式的12:34数字(冒号前后两位数字)。


您可能希望Regex根据您的确切标准修改您的。


查看完整回答
反对 回复 2021-11-07
  • 1 回答
  • 0 关注
  • 172 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信