在Regex C中允许撇号,点,符号,数字和字符#

时间:2018-06-01 16:29:15

标签: c# ios regex xamarin.forms

我使用以下RegEx:

public const string SpecialCharRegex = @"^[A-Za-z0-9\s\(\)\.\&\-',`]+$";

我正在使用它在iPhone上验证iOS应用中的字段。

我喜欢匹配此课程中的所有角色。但是,我有印刷智能/卷曲撇号的问题。

示例:

My name is AB'c 

没关系,但如果在iPhone上输入错误,则会抛出错误。

事实证明,iOS键盘没有放入撇号'(char 39),而是一个Unicode'智能'左引号(char 8216)。如何调整模式以匹配智能引号?

1 个答案:

答案 0 :(得分:2)

那里有很多quotation mark个字符。

我想你也想抓住那些:

  

U + 2018:左单引号标记
  U + 2019:正确的单个报价标记
  U + 201C:左双重报价标记
  U + 201D:右双引号

像这样添加它们以便character class\uFFFF\xFF(请参阅here

string SpecialCharRegex = @"^[A-Za-z0-9\s\(\)\.\&\-',`\u2018\u2019\u201C\u201D]+$";