正则表达式:捕获大小写字母

4

我将创建一个简单的C#应用程序,其中有一个条件是捕获字母的大写和小写。

这是我的条件:

if( txtChord.Text == "A" || txtChord.Text == "a" && cbKeys.SelectedIndex == 6 ){
                txtAnswer.Text = "B";
            }

我希望能够使用正则表达式更高效地完成这个任务。


2
在这种情况下,检查它是否为A或a是可以的。不要在这种情况下使用正则表达式。此外,如果您无法弄清楚如何使用正则表达式,请停止并先学习。 - Cole Tobin
5个回答

6

3

为了忽略大小写,通常会采取以下方法:

if( txtChord.Text.ToLower() == "a" && cbKeys.SelectedIndex == 6 )

但请注意,在您的if语句中,这两个检查不是“等价的”,因为&&||优先级更高。 您的代码等效于:

if( txtChord.Text == "A" || (txtChord.Text == "a" && cbKeys.SelectedIndex == 6))

这个不能仅用一次检查来替代。


1

您不需要使用正则表达式来完成这个任务。您可以简单地执行以下操作:

if(txtChord.Text.ToLower() == "a" && cbKeys.SelectedIndex ==6)
{
     txtAnswer.Text = "B";
}

ToLower()会将txtChord文本框中的任何文本转换为小写,然后您可以根据此进行检查。或者您可以使用ToUpper()。这是相同的事情,但是使用大写字母。


1

Regex.Match(txtChord.Text,"a",RegexOptions.IgnoreCase)


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接