如何编写RegExpression For在javascript中不允许在字符串中使用前导和结尾空格

How To write RegExpression For Not allow leading and ending space in string in javascript

本文关键字:空格 结尾 不允许 RegExpression 何编写 For javascript 字符串      更新时间:2023-09-26

我正在写一个Javascript RegExpression,但我没有得到正确的答案,我正在写

•输入数据无限制。

•不允许有起始和结束空间。

我写得像/^''S*''S$/,但没有得到正确的输出,请帮助我。

你几乎做对了,你只需要在*之前有一个.。通过这种方式,它只检查第一个和最后一个字符是否为空白,并允许任何介于两者之间的字符。正如您所拥有的,字符串中的每个字符都不能是空白,所以像hello hello这样的字符串会失败。

/^'S.*'S$/

正在RegExr 上工作

没有必要为此使用正则表达式。通过简单地使用if,您可以很容易地检查第一个或最后一个字符是否为空白。

类似这样的东西:

var input = " my text with whitespaces";
if(input[0] == " " || input[input.length-1] == " ") {
   console.log("error");
}

基板版本:

var input = " my text with whitespaces";
if(input.substring(0,1) == " " || input.substring(input.length-1, input.length) == " ") {
   console.log("error");
}

您可以使用负前瞻:

(/^'S+(?!.*'s$).*$/).test('my string')

^'S+在不是空白的字符串开头匹配一个字符

字符串末尾空白的(?!.*'s$)负前瞻

.*匹配任何其他

如果字符串的开头或结尾有空格,则该值将为true,否则为false。

你也可以做:

!(/^'s+|'s+$/).test('my string')

根据正则表达式的知识,它可能更可读。