Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.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设置自己的字符串格式_C#_String - Fatal编程技术网

C# 使用c设置自己的字符串格式

C# 使用c设置自己的字符串格式,c#,string,C#,String,我目前正在为我们公司的股票开发一个应用程序。在这个应用程序中,我必须创建一个格式检查按钮。因此,如果文本框中的文本格式不正确,它应该抛出一个错误 我想使用String.Format方法,但我认为我做得不对,我不知道使用这个方法是否可行。我尝试了以下方法: string format = String.Format("XXX.XX.XX.XX.X", txtStockFormat.Text); if (format != txtStockFormat.Text) { MessageBox

我目前正在为我们公司的股票开发一个应用程序。在这个应用程序中,我必须创建一个格式检查按钮。因此,如果文本框中的文本格式不正确,它应该抛出一个错误

我想使用String.Format方法,但我认为我做得不对,我不知道使用这个方法是否可行。我尝试了以下方法:

string format = String.Format("XXX.XX.XX.XX.X", txtStockFormat.Text);

if (format != txtStockFormat.Text)
{
    MessageBox.Show("if");
}

else
{
    MessageBox.Show("else");
}
我不知道String.Format是否是实现我想要的内容的正确方法,我想我不太理解它。我已经搜索过了,我看到有很多给定的格式,但是我找不到一种方法来设置我自己的格式

有人能告诉我怎样才能做到这一点吗


感谢您的建议:

您的问题不清楚,因为您要求设置字符串格式,但在代码中您试图将文本与该格式进行比较。
无论如何,如果您想将字符串更改为自己想要的格式,只需使用ToString方法,如_yourString.ToString_yoursformat

正如对您的问题的评论所说,您必须使用Regex。大约一个月前我也遇到过类似的问题,我花了一段时间才明白正则表达式是如何工作的

我想你正在寻找这样的东西:

string pattern = @"[a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9]\.[a-zA-Z0-9][a-zA-Z0-9]\.[a-zA-Z0-9][a-zA-Z0-9]\.[a-zA-Z0-9][a-zA-Z0-9]\.[a-zA-Z0-9]";
Match match = Regex.Match(txtStockFormat.Text, pattern);

if (match.Success)
{
    // Do your stuff
}

else
{
    // Do your stuff
}
在你的问题中,你想要的格式是XXX.XX.XX.XX.X。让我们看一下前三个字母。在我的代码示例中,前三个字母可以是a-z、a-z和0-9之间的数字。如果前三个字符只需要大写字母,则必须将模式更改为[A-Z]

你可以用你想要的模式替换我上面写的模式。我为您在问题中发布的示例定义了模式

更新:

正如@Rawling在评论中所说的,为了让它更清楚、更简单,这将产生同样的效果:

string pattern = @"[a-zA-Z0-9]{3}\.[a-zA-Z0-9]{2}\.[a-zA-Z0-9]{2}\.[a-zA-Z0-9]{2}\.[a-zA-Z0-9]";

字符串格式,格式化字符串。它不验证格式。也许你在找正则表达式?听起来你在找正则表达式模式哦,很高兴知道。我将搜索它,谢谢:尝试使用常规表达式使用正则表达式匹配-非常感谢!我想我现在了解了一些正则表达式以及如何使用它。谢谢你,伙计=[a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9]可以是[a-zA-Z0-9]{3}如果你觉得不那么冗长的话。@Rawling啊,谢谢,我不知道:这会让事情变得更简单、更清楚:
string pattern = @"[a-zA-Z0-9]{3}\.[a-zA-Z0-9]{2}\.[a-zA-Z0-9]{2}\.[a-zA-Z0-9]{2}\.[a-zA-Z0-9]";