将RegEx从PHP转换为Asp.Net RegularExpressionValidator

用户名

我目前正在运行此RegularExpressionValidator:

<asp:RegularExpressionValidator ID="rev_Nachname" runat="server" ControlToValidate="edtNachname"
                            Display="None" ErrorMessage="$InvalidBeginOfStringNonTechnik$Nachname$2" ValidationExpression="^[a-zA-ZÆÄÜÖáâãäåæçèéêëìíîïñòóôõöøùúûüß0-9'-]{2}.*"></asp:RegularExpressionValidator>

现在,我确实有将其更改为Unicode-Latin的要求,并为PHP创建了RegEx:

^[\p{Latin}+\p{M}*+0-9'-]{2,}

更改了正则表达式并部署了相关站点后-如果我打开更改了正则表达式的站点,应用程序将立即超时-如果撤消所做的更改,一切都会正常。

由于我没有收到任何错误,因此我有点茫然-但是认为ASP无法处理我的RegEx。有什么明显的原因为什么不起作用?

提前致谢!

威克多·斯特里比尤(WiktorStribiżew)

您似乎希望允许名称中包含拉丁语的所有Unicode类别以下是它们的范围:

| Code point range  |        Block name            |
|--------------------------------------------------|
|   0000 - 007F     |    IsBasicLatin              |
|   0080 - 00FF     |    IsLatin-1Supplement       |
|   0100 - 017F     |    IsLatinExtended-A         | 
|   0180 - 024F     |    IsLatinExtended-B         |
|   1E00 - 1EFF     |    IsLatinExtendedAdditional |
|--------------------------------------------------|

因此,您可以从它们创建一个自定义的特殊类,并添加'0-9-到其中以获取以前的正则表达式的扩展版本:[\u0000-\u007F\u0080-\u00FF\u0100-\u017F\u0180-024F\u1E00-\u1EFF'0-9-]

但是,您当前的正则表达式仅匹配string的开头,^您的自定义字符类([...]{2}部分)中的2个字符,以及除换行符(.*以外的任何0+字符扩展版本看起来像

^[\u0000-\u007F\u0080-\u00FF\u0100-\u017F\u0180-024F\u1E00-\u1EFF'0-9-]{2}.*    

如果您需要允许自定义字符类中的两个或多个符号,请使用

^[\u0000-\u007F\u0080-\u00FF\u0100-\u017F\u0180-024F\u1E00-\u1EFF'0-9-]{2,}$

更新

因此,事实证明,您需要从BMP平面之外支持变音符号,并且特定的Unicode代码点范围不包括其中的一些。

^(?:(?:(?:(?![\u0009-\u002F\u003A-\u0040])[a-zA-Z\u006E-\u0302\u006D-\u0302\u004A-\u030C'0-9-])|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])){2,}

这是一个正则表达式演示

模式的主要部分是(?:(?![\u0009-\u002F\u003A-\u0040])[a-zA-Z\u006E-\u0302\u006D-\u0302\u004A-\u030C'0-9-]),其余部分用于匹配变音符号。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JavaScript RegExp与ASP RegularExpressionValidator

来自分类Dev

为什么使用此ASP.NET RegularExpressionValidator验证危险的html无效?

来自分类Dev

ASP.NET RegularExpressionValidator不会针对允许的不同位数进行验证

来自分类Dev

.Net RegularExpressionValidator ValidationExpression不允许以A,The,An开头的名称

来自分类Dev

如何使用JavaScript重置从ASP中的RegularExpressionValidator生成的跨度文本

来自分类Dev

如何使用JavaScript重设从ASP中的RegularExpressionValidator生成的跨度文本

来自分类Dev

将字符串传递给RegularExpressionValidator.ValidationExpression属性

来自分类Dev

将 .Net API 转换为 PHP

来自分类Dev

如何将Laravel 5.1 / PHP网站转换为ASP.NET

来自分类Dev

使用asp RegularExpressionValidator控件的validatin版本号的正则表达式

来自分类Dev

将Bootstrap Carousel转换为ASP.Net Repeater

来自分类Dev

将varchar转换为float asp.net时出错

来自分类Dev

ASP.NET将IQueryable转换为List

来自分类Dev

ASP.net将List <T>转换为XML

来自分类Dev

将asp.net Webform转换为MVC

来自分类Dev

ASP.NET将IQueryable转换为List

来自分类Dev

将Bootstrap Carousel转换为ASP.Net Repeater

来自分类Dev

ASP.NET 将真/假转换为是/否

来自分类Dev

文本更改中的RegularExpressionValidator

来自分类Dev

将VB.NET代码转换为PHP

来自分类Dev

将“ .net正则表达式”转换为php

来自分类Dev

将.net aes256加密代码转换为php

来自分类Dev

将 PHP http 请求转换为 C# .NET

来自分类Dev

ASP.NET MVC无法将IList转换为IEnumerable?还尝试了将IList转换为IList并仍然出错

来自分类Dev

Enter/Return 键触发 RegularExpressionValidator

来自分类Dev

将功能从asp转换为asp.net发送电子邮件

来自分类Dev

将日期从.Net转换为Angularjs

来自分类Dev

将日期从.Net转换为Angularjs

来自分类Dev

将字符串生成器转换为tagbuilder asp.net mvc 4

Related 相关文章

  1. 1

    JavaScript RegExp与ASP RegularExpressionValidator

  2. 2

    为什么使用此ASP.NET RegularExpressionValidator验证危险的html无效?

  3. 3

    ASP.NET RegularExpressionValidator不会针对允许的不同位数进行验证

  4. 4

    .Net RegularExpressionValidator ValidationExpression不允许以A,The,An开头的名称

  5. 5

    如何使用JavaScript重置从ASP中的RegularExpressionValidator生成的跨度文本

  6. 6

    如何使用JavaScript重设从ASP中的RegularExpressionValidator生成的跨度文本

  7. 7

    将字符串传递给RegularExpressionValidator.ValidationExpression属性

  8. 8

    将 .Net API 转换为 PHP

  9. 9

    如何将Laravel 5.1 / PHP网站转换为ASP.NET

  10. 10

    使用asp RegularExpressionValidator控件的validatin版本号的正则表达式

  11. 11

    将Bootstrap Carousel转换为ASP.Net Repeater

  12. 12

    将varchar转换为float asp.net时出错

  13. 13

    ASP.NET将IQueryable转换为List

  14. 14

    ASP.net将List <T>转换为XML

  15. 15

    将asp.net Webform转换为MVC

  16. 16

    ASP.NET将IQueryable转换为List

  17. 17

    将Bootstrap Carousel转换为ASP.Net Repeater

  18. 18

    ASP.NET 将真/假转换为是/否

  19. 19

    文本更改中的RegularExpressionValidator

  20. 20

    将VB.NET代码转换为PHP

  21. 21

    将“ .net正则表达式”转换为php

  22. 22

    将.net aes256加密代码转换为php

  23. 23

    将 PHP http 请求转换为 C# .NET

  24. 24

    ASP.NET MVC无法将IList转换为IEnumerable?还尝试了将IList转换为IList并仍然出错

  25. 25

    Enter/Return 键触发 RegularExpressionValidator

  26. 26

    将功能从asp转换为asp.net发送电子邮件

  27. 27

    将日期从.Net转换为Angularjs

  28. 28

    将日期从.Net转换为Angularjs

  29. 29

    将字符串生成器转换为tagbuilder asp.net mvc 4

热门标签

归档