用于英文字母和特殊字符的正则表达式

时间:2014-10-23 07:06:34

标签: c# regex visual-studio-2012

我想写一个正则表达式,它允许所有的英文字母和特殊字符,例如

Abcdwfg*+""æ-/.,´Øøå&öé

并且这样的字符串不应该以数字开头,我的意思是数字可以在任何字母之后出现,例如"Héllo123"

我试过这个[a-zA-Z\s]{0,50},但它只接受英文小写和大写字母, 比我试过[\w\sØÖ]{0,100}但是在这里我必须明确写出应该允许这些ØÖ字符,所以我需要一些帮助。

以下是我尝试执行此操作的代码

<asp:RegularExpressionValidator id="RegularExpressionValidator2" runat="server" ControlToValidate="ForlagName" ErrorMessage="Enter a valid ForlagName." Text="*" Display="Dynamic" ForeColor="Red" ValidationExpression="[a-zA-Z\s]{0,50}" ValidationGroup="vgForlagKey">
     </asp:RegularExpressionValidator> 

2 个答案:

答案 0 :(得分:1)

在正则表达式字符类中提及hexadecimal values or ranges中的特殊字符,并再次使用0-9重复相同的正则表达式,以避免从任何数字开始任何字符串。

例如:

[A-Za-z\xf6-\xf8\xe5]+[A-Za-z\xf6-\xf8\xe50-9]*

十六进制值及其特殊字符的一些示例

f6 - ö 
f7 - ÷
f8 - ø
e5 - å
...

Online demo

注意:如果需要,请使用^$来匹配字符串/行的开头和结尾。

Read more...

答案 1 :(得分:0)

试试这个:

^[\D]{0,50}

\ D是一切不是数字。