Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.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,我正在尝试编写一个正则表达式,它允许a-Z而不考虑大小写,也允许0-9但不作为第一个字符,也允许下划线但不作为第一个字符。它还应该允许空格,但不应该只允许在开头或结尾使用空格。因此,例如,以下内容应有效: “这个” “这是有效的” “这很好” 这些不应该是有效的 “123” “这1” “这个” 我有以下资料: [RegularExpression(@“^[a-zA-Z0-9\]*$”,ErrorMessage=“仅名称 允许字母和数字“)] 但这允许在开始时留出空间 非常感谢您的帮助 V

我正在尝试编写一个正则表达式,它允许a-Z而不考虑大小写,也允许0-9但不作为第一个字符,也允许下划线但不作为第一个字符。它还应该允许空格,但不应该只允许在开头或结尾使用空格。因此,例如,以下内容应有效:

  • “这个”
  • “这是有效的”
  • “这很好”
这些不应该是有效的

  • “123”
  • “这1”
  • “这个”
我有以下资料:

[RegularExpression(@“^[a-zA-Z0-9\]*$”,ErrorMessage=“仅名称 允许字母和数字“)]

但这允许在开始时留出空间

非常感谢您的帮助


Vince.

要在第一个字符和其余字符之间使用不同的规则,请使用以下命令:

^[a-zA-Z]+[a-zA-Z0-9_ ]*$

试试下面的正则表达式

^[a-zA-Z]+.*?[^\s]$

通过Regex101。你也可以在那里测试它

它与您提供的测试用例相匹配。希望这有帮助


Hogan

这一个在“This1”上失败了谢谢Roy的回复。就快到了。它修复了第一个字符以允许A-Z或A-Z,但在结尾处允许太多空格。e、 “abc”是允许的。谢谢霍根的帮助,这解决了我的问题。我也很喜欢regex在线测试仪,它非常有用。如果我还想禁止任何空格,你知道这个表达式是什么吗?我知道原来的问题已经解决了,我们正在寻找一个备份解决方案,以防我们决定不允许这样做。很高兴能提供帮助。如果没有看到有效和无效的例子来测试,很难说。。。我猜下面的方法行得通。以字母开头,没有空格^再次感谢,我来看看。