Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.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# 验证.NET多语言web应用程序中名称的正则表达式_C#_.net_Multilingual - Fatal编程技术网

C# 验证.NET多语言web应用程序中名称的正则表达式

C# 验证.NET多语言web应用程序中名称的正则表达式,c#,.net,multilingual,C#,.net,Multilingual,如何编写正则表达式来验证多语言web应用程序中的名称字段,我想验证非英语语言(如西班牙语或德语)的名称字段,我们需要确保没有人输入数字或特殊字符。我正在使用.NET2.0 我相信我们不能将下面的表达方式用于非英语语言 ^[a-zA-Z]{1,20}$ 任何帮助都将不胜感激 我得到了这个正则表达式,它在我使用时非常有效,但当我在实际的web应用程序中尝试它时,它失败了: ^\p{L}[\p{L}\p{Pd}\x27]*\p{L}$ 使用\w表示字母。它是多语言友好的用于字母。多语言友好怎么了?

如何编写正则表达式来验证多语言web应用程序中的名称字段,我想验证非英语语言(如西班牙语或德语)的名称字段,我们需要确保没有人输入数字或特殊字符。我正在使用.NET2.0

我相信我们不能将下面的表达方式用于非英语语言

^[a-zA-Z]{1,20}$
任何帮助都将不胜感激

我得到了这个正则表达式,它在我使用时非常有效,但当我在实际的web应用程序中尝试它时,它失败了:

^\p{L}[\p{L}\p{Pd}\x27]*\p{L}$


使用\w表示字母。它是多语言友好的

用于字母。多语言友好

怎么了?被匹配?简短的回答:不要。这个星球上有一个人的名字叫16号公共汽车候车亭,你将阻止他们进入你的网站!来源:。因此,您将对域施加任意限制,这与现实世界中的实际限制不匹配。你为什么要验证这一点?@Martin:这很有见地!感谢分享链接,我一直反对这样做,但现在我有了一个参考:像这样的无点验证只会添加更多代码,这是您必须测试的代码。如果有人的名字里有一个数字,会发生什么?理查德三世?使用^[A-Za-z]{0,7}$,因为现在世界上有比人类更多的匹配组合。另外,它适用于我的名字和姓氏。怎么了?被匹配?简短的回答:不要。这个星球上有一个人的名字叫16号公共汽车候车亭,你将阻止他们进入你的网站!来源:。因此,您将对域施加任意限制,这与现实世界中的实际限制不匹配。你为什么要验证这一点?@Martin:这很有见地!感谢分享链接,我一直反对这样做,但现在我有了一个参考:像这样的无点验证只会添加更多代码,这是您必须测试的代码。如果有人的名字里有一个数字,会发生什么?理查德三世?使用^[A-Za-z]{0,7}$,因为现在世界上有比人类更多的匹配组合。另外,它适用于我的名字和姓氏。它是否只允许带有空格的字母表,而不允许数字和特殊字符???根据\w相当于[A-Za-z0-9],对于JavaScript,它由regexvalidator在客户端使用。请参阅页眉JScript正则表达式语法脚本。它不是.net,而是jscript@Andery,这意味着它也包括数字,因为它也有Nd:{Nd-Number,Decimal digital}是的,它包括它们。如果您只需要字母,那么使用显式指定它是否只允许带有空格的字母表,而不允许数字和特殊字符???根据\w相当于[A-Za-z0-9],对于JavaScript,它由regexvalidator在客户端使用。请参阅页眉JScript正则表达式语法脚本。它不是.net,而是jscript@Andery,这意味着它也包括数字,因为它也有Nd:{Nd-Number,Decimal digital}是的,它包括它们。如果只需要字母,则使用