C# C正则表达式验证输入格式

C# C正则表达式验证输入格式,c#,regex,C#,Regex,我的输入格式如下: {random string} + " " + {integer} e、 g 如何使用正则表达式验证此格式 我遇到了一个问题: 字符串的正则表达式是什么?试试看 bool _result = Regex.IsMatch(yourStr, @"^[A-Za-z]+\s\d+$"); 正则表达式模式的解释 自卫队 在字符串开头或换行符后的行首断言位置^ 匹配下面列表中的单个字符[a-Za-z]+ 在一次和无限次之间,尽可能多次,根据需要给予回报+ 介于“A”和“Z”A-Z之间

我的输入格式如下:

{random string} + " " + {integer}
e、 g

如何使用正则表达式验证此格式

我遇到了一个问题: 字符串的正则表达式是什么?

试试看

bool _result = Regex.IsMatch(yourStr, @"^[A-Za-z]+\s\d+$");
正则表达式模式的解释

自卫队

在字符串开头或换行符后的行首断言位置^ 匹配下面列表中的单个字符[a-Za-z]+ 在一次和无限次之间,尽可能多次,根据需要给予回报+ 介于“A”和“Z”A-Z之间的字符 介于“A”和“z”A-z之间的字符 匹配单个“空白字符”空格、制表符和换行符\s 匹配单个数字0..9\d+ 在一次和无限次之间,尽可能多次,根据需要给予回报+ 在字符串末尾或换行符之前的行尾断言位置$ 应该有用

bool _result = Regex.IsMatch(yourStr,@"^\w+?.\d+?$");

如果您不理解它,就不需要使用正则表达式,如果您想看一看的话,可以使用另一种方法。它可能更容易阅读,我个人觉得正则表达式很难阅读。

string?什么样的弦?什么角色?字符串可以是任何字符。123也是一个字符串。也是一个字符串。请读几遍。你试过什么?regexpal.com为什么在通常有更简单的解决方案的情况下,一切都依赖regex是一种趋势?但是有没有验证的解决方案?但是正则表达式只适用于一个字符,如果有两个或两个以上的字符,regex将不起作用。它应该匹配每个可打印字符,而不仅仅是字母,除此之外,这是最好的答案,虽然问题说他想要一个正则表达式,但它可以完成,但用正则表达式完成的任何事情都可以不用它。我同意,你绝对不需要正则表达式的开销来解决这个问题。这在计算效率和速度上都要快得多。仅仅因为有人要正则表达式并不意味着这是最好的答案。这就是为什么如此。@Gabriel Monteiro Nepomuceno没关系,只要我能验证input@GabrielMonteiroNepomucenoOP想要正则表达式,很可能是因为他们不懂。正如我所说,我已经提供了一个替代方案,它可能更容易让OP相处,也更容易阅读——只是一个建议。@downvorters当你否决时,至少要给出一个理由。OP刚刚说任何方法都可以。。。
bool _result = Regex.IsMatch(yourStr,@"^\w+?.\d+?$");
public bool IsValidString(string s)
{
  string[] strs = s.Split(' ');
  int i = 0;
  if (strs.Length != 2)
    return false;
  return (int.TryParse(strs[1], out i);
}