Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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#_Regex - Fatal编程技术网

C# 如何检查字符串是否只包含特定字符而不是全部字符?

C# 如何检查字符串是否只包含特定字符而不是全部字符?,c#,regex,C#,Regex,这是我的密码: string rejon = textBox.Text.Trim(); if ((!Regex.IsMatch(rejon, @"^[a-zA-Z]\d{3}$"))) { MessageBox.Show("Error. Please, try again!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); textBox.Clear(); textBox.Focus();

这是我的密码:

string rejon = textBox.Text.Trim();

if ((!Regex.IsMatch(rejon, @"^[a-zA-Z]\d{3}$")))
{
    MessageBox.Show("Error. Please, try again!", "Error", MessageBoxButtons.OK, 
    MessageBoxIcon.Error);

    textBox.Clear();
    textBox.Focus();
    return false;
}

我只想要字母“R”和“S”,而不是所有的字母[a-zA-Z]。用正则表达式可以吗?我知道我可以将其子串,然后再进行另一次验证,但我想问的是,我可以用regex执行此操作吗?

您必须将
[a-zA-Z]
更改为
[RS]
以检查字符串中是否只有“R”和“s”。

您只需将[a-zA-Z]更改为[RS]以检查字母“R”和“s”。

最好使用
/^[RS]+$/i
/^[RSrs]+$/
匹配ASCII字母表的输入字符串。

当然,只需使用[RS]而不是[a-zA-Z]您想检查字符串是否只有R或(和)S?例如,“RRR”、“RSR”、“SSS”?@RahulHendawe据我所知,您不需要该文件中的
-
expression@TheLethalCoder:你是对的,谢谢你纠正我。你也可以保持简单,只要做:if(rejon[0]!=“R”&&rejon[0]!=“S”)通过仅进行此更改,它将仅检查字符串是否以R或SIsn开头。这不是OP想要的吗?而不是所有的[…]只是字母“R”和“S”。我不知道我觉得措辞有点不清楚,我只是想提一下it@TheLethalCoder你说得对,这不是不可能的。据我所知,这就是他正在搜索的内容。如果我发布了不清楚的问题,我很抱歉,仅通过进行此更改,我将只检查字符串是否以R或S开头,这正是我需要的。