2017-07-20 72 views
0

我有一个测试字符串并验证它是否包含字母,数字和一些特殊字符(包括字符%20(空格)%27(撇号))的JavaScript函数。因为它允许其他字符,如%3从字符串中排除%3的正则表达式

我想失败在字符串中的任何%3比赛

我现在正则表达式失败。更好的是,我只想匹配%20和/或%27作为一个组。

我正则表达式是

^[0-9a-zA-Z\%20\-_:.,!\/\\%27]+$ 

我想这个匹配

Employee%27s%20Saved 

,但未能像

%3Emplo%3yee%27s%20Saved%3 
+0

如果有什么在一个字符串中间只有一个3%? – evolutionxbox

+0

尝试'^([0-9a-zA-Z -_:。,!/] |%20 |%27)+ $' – MohaMad

回答

0

更新到@MohaMad评论:

^(?:[0-9a-zA-Z-_:.,!/\\]|%20|%27)+$ 

通过使用非捕获组,它只会导致完全匹配。

相关问题