如何识别字符串不应该以S和V开头
本文关键字:开头 不应该 字符串 何识别 识别 | 更新日期: 2023-09-27 18:17:49
嗨,我想检查字符串不应该以V和s开头,我使用下面的代码来查找。但它总是在误差部分。请帮我做这件事。
if (!Smc.StartsWith("V") || !Smc.StartsWith("S"))
{
RetStr = "1:Invalid String";
return RetStr;
}
如果您想在字符串以V或S开头时进入错误部分,您可以这样做…
if ( Smc.StartsWith("V") || Smc.StartsWith("S"))
{
RetStr = "1:Invalid String";
return RetStr;
}
现在,您的if
条件基本上是:
"如果Smc不是以V开头,或者Smc不是以S开头"
由于字符串不能同时以V和S开头,因此这两个语句中至少有一个总是为真。
您需要删除not
操作符,如下所示:
if (Smc.StartsWith("V") || Smc.StartsWith("S"))
{
RetStr = "1:Invalid String";
return RetStr;
}
IF语句
if (!Smc.StartsWith("V") || !Smc.StartsWith("S"))
被解释为smc不以"V"开头或者 smc不以"S"开头
如果smc从S开始,那么它不是从v开始,所以第一个条件成立。如果smc从V开始,那么它不是从S开始,所以第二个条件成立。如果smc以任何其他字符开头,则两个条件都为真。
因此它总是执行返回块。