如何在C#中检查指定的正则表达式

时间:2019-03-20 11:10:08

标签: c# qregularexpression

我是正则表达式的初学者,我想检查字符串变量是否满足这样的指定表达式:

R|numeric_value|^value0^^^value1|value2|value_or_null|date_value

注意:符号(|和^)是强制性的静态字符,它们被视为字段定界符

请任何人帮忙!

预先感谢

1 个答案:

答案 0 :(得分:1)

您可以使用http://regexstorm.net/tester之类的在线服务,但需要学习。 我推荐一个T.D.D. xUnit之类的方法,例如https://xunit.github.io/

像这样的东西:

[Theory]
[InlineData("input_1", "pattern")]
[InlineData("input_2", "pattern")]
[InlineData("input_x", "pattern")]
public void ShouldMatch(string input, string pattern)
{
  try
  {
    var isMatch = Regex.IsMatch(input, pattern);
    Assert.True(isMatch);
  }
  catch (ArgumentException)
  {
    Assert.True(false);
  }
}

编辑:

感谢您的回复,但是模式如何?

  1. 阅读文档.Net Regular Expression Language - Quick Reference
  2. 通过逻辑OR / AND / NOR / NAND / etc运算符拆分正则表达式。
  3. 使用Tdd cycle steps
  4. 解决第一个表达式。
  5. 解决第二个表达式。
  6. 使用逻辑OR / AND / NOR / NAND / etc运算符在第一个表达式和第二个表达式之间解决这两个表达式。
  7. 等等。

这个小运动之后。 您将更好地了解如何自己构建模式。