繁体   English   中英

正则表达式除了所有空格和一个特殊字符外的所有内容

[英]Regular Expression for everything except all spaces and one special character

在这几个小时了,似乎无法让这个看似简单的正则表达式工作。 我成功地用^[^']+$或只用[^']排除了一个字符,并且用[\\\\S]成功地排除了所有空格,但我无法弄清楚如何将它们组合在一个表达式中。

我尝试了很多不同的组合:

^(?=[^'])[\\S]$
[\\S-[']]

规则很简单 - 不能是所有空格,也不能包含撇号。 有人可以帮我从这里出去吗?

如果您需要测试所有空格或撇号,那么您可以使用以下内容:

if (/'|^\s+$/.test(str)) {
    // is invalid
}

我认为这样可以解决问题:

if (/'|^[ ]+$/.exec(str)) {
    // invalid...
}

如果整个字符串是白色的,或者有任何撇号的实例,则以下情况将成立。

if (/^\s+$|'/.test(s)) {
    // is invalid
}

正则表达式之间有交替

  • ^\\s+$
    • ^ :字符串的开始
    • \\s :空格(1次或更多次)
    • $ :字符串结束
  • ' :撇号字符

如果这两个序列中的任何一个匹配,则该字符串无效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM