Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何检查文本框是否以数值开头_C# - Fatal编程技术网

C# 如何检查文本框是否以数值开头

C# 如何检查文本框是否以数值开头,c#,C#,在Windows窗体C#中,我想检查我创建的文本框是否以数值开头,如果是,我想在开头插入减号(-)以将数字改为负数,我找到了一种方法,但这太浪费时间了,下面是我的代码: if(richTextBox1.Text.StartsWith(“1”)| richTextBox1.Text.StartsWith(“2”)#直到richTextBox1.Text.StartsWith(“9”)) { richTextBox1.Text.Insert(0,“-”); } 所以我在问,是否有一个更短的方法来替

在Windows窗体C#中,我想检查我创建的文本框是否以数值开头,如果是,我想在开头插入减号(-)以将数字改为负数,我找到了一种方法,但这太浪费时间了,下面是我的代码:

if(richTextBox1.Text.StartsWith(“1”)| richTextBox1.Text.StartsWith(“2”)#直到richTextBox1.Text.StartsWith(“9”))
{
richTextBox1.Text.Insert(0,“-”);
}
所以我在问,是否有一个更短的方法来替换代码

if (Char.IsNumber(richTextBox1.Text[0]))...
您还应该在其周围添加一些检查,以确保有文本

您还应该在其周围添加一些检查,以确保有文本。

使用正则表达式:

if (Regex.IsMatch(richTextBox1.Text, @"^\d"))
匹配字符串开头的数字(0-9)

或直接替换:

richTextBox1.Text = Regex.Replace(richTextBox1.Text, @"^\d", "-$&");
使用正则表达式:

if (Regex.IsMatch(richTextBox1.Text, @"^\d"))
匹配字符串开头的数字(0-9)

或直接替换:

richTextBox1.Text = Regex.Replace(richTextBox1.Text, @"^\d", "-$&");

检查文本的第一个字符是否为数字可以在单行中使用Char.IsNumber()函数进行,如下所示:

if(Char.IsNumber(stringInput,0)){

}

更多信息:

检查文本的第一个字符是否是数字,可以使用Char.IsNumber()函数在单行中完成,如下所示:

if(Char.IsNumber(stringInput,0)){

}

更多信息:

这里已经有很多好的答案,另一个选择是如果您需要文化支持,请尝试一下

 public static bool IsNumber(char character)
 {
    try
    {
       int.Parse(character.ToString(), CultureInfo.CurrentCulture);
       return true;
    }
       catch (FormatException) { return false; }
 }
你可以这样称呼它:

 if ( IsNumber(richTextBox1.Text[0]))

很多好的答案已经在这里了,另一个选择是如果你想要文化支持,试试看

 public static bool IsNumber(char character)
 {
    try
    {
       int.Parse(character.ToString(), CultureInfo.CurrentCulture);
       return true;
    }
       catch (FormatException) { return false; }
 }
你可以这样称呼它:

 if ( IsNumber(richTextBox1.Text[0]))

这是特定的文化吗。此外,请查看备注部分了解更多信息。这是特定于文化的吗。此外,请查看备注部分以了解更多信息。