Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.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#_Asp.net - Fatal编程技术网

C# 如何检查字符串是否只包含一个特定字符?

C# 如何检查字符串是否只包含一个特定字符?,c#,asp.net,C#,Asp.net,检查dr[“DomainName”]是否包含字符*,但如果该条件包含其他字符,则该条件也可能为真 如何检查字符串是否只包含一个字符,而此字符是*您只需使用字符串比较它们。等于或= dr["DomainName"].ToString().Contains("*") if(dr.Field(“域名”)==“*”) { // ... } String.Contains是一个子字符串搜索,而=比较整个字符串。一个简单的==就可以了 if(dr.Field<string>("DomainN

检查
dr[“DomainName”]
是否包含字符
*
,但如果该条件包含其他字符,则该条件也可能为真


如何检查字符串是否只包含一个字符,而此字符是
*

您只需使用
字符串比较它们。等于或
=

dr["DomainName"].ToString().Contains("*")
if(dr.Field(“域名”)==“*”)
{
// ...
}

String.Contains
是一个子字符串搜索,而
=
比较整个字符串。

一个简单的==就可以了

if(dr.Field<string>("DomainName") == "*")
{
    // ...
}

您只需将
字符串
*
进行比较:

dr["DomainName"].ToString() == "*"

以下是要检查的正确条件,它是否等于*

dr["DomainName"].ToString() == "*";

Contains确定给定字符串是否包含参数,参数是单个字符还是要查找的子字符串

例如,
(“Hello World”).Contains(“Hello”)
以及
(“Hello World”).Contains('e')
都会导致true,因为给定的字符串(在本例中,“Hello World”)在这两种情况下都包含给定的参数。更多关于string.Contains的信息

然而,在您的例子中,我理解您只是试图确定给定的字符串是否是星号,而不是它是否包含星号。在这种情况下,不需要string.Contains!只需做这样一个简单的比较:
dr[“DomainName”].ToString()==“*”


如果我以任何方式误解了您的问题,请纠正我,如果您还有任何问题,请随时对此答案发表评论。

erm,
dr[“DomainName”].ToString()==“*”
如果您的意思是字符串是一个或多个*&没有其他内容,请检查:您正在使用“Contains”搜索整个字符串中的*,因此,当字符串包含*甚至一次(至少一次)以及其他字符时,这将是正确的。但是如果您想检查字符串是否仅为*(仅),您应该使用jodrell发布的解决方案。不管怎样,为什么这个问题被否决了?我很好奇。
dr["DomainName"].ToString() == "*"