我有以下正则表达式模式:[^\u0001-\u00FF]。这样,我可以验证用户输入中是否包含无效字符,例如“€”等。

var utfRegex: RegExp = new RegExp('[^\u0001-\u00FF]');
return !utfRegex.test(userInput);


现在,我使用标签输入组件,并且需要验证用户输入。所以我需要通过一个正则表达式,它可以反过来工作。

最简单的方法来扭转这个正则表达式?

最佳答案

只允许有效字符:

为确保userInput仅包含有效字符(范围ASCII 0-255),请使用正则表达式:

`^[\u0001-\u00FF]+$`



^$作为开始和结束锚点
[\u0001-\u00FF]+匹配一个或多个属于ASCII范围0-255的字符。


还将!utfRegex.test更改为utfRegex.test

码:

var utfRegex: RegExp = new RegExp('^[\u0001-\u00FF]+$');
return utfRegex.test(userInput);


仅允许使用无效字符:

为确保输入仅包含无效字符,

`^[^\u0001-\u00FF]+$`



^$作为开始和结束锚点
[^\u0001-\u00FF]+匹配一个或多个不属于ASCII范围0-255的字符。


也不要忘记将!utfRegex.test更改为utfRegex.test

码:

var utfRegex: RegExp = new RegExp('^[^\u0001-\u00FF]+$');
return utfRegex.test(userInput);

10-02 20:28