/ ^ \ s * $ /.test(string) - 这就是我正在使用的代码片段。 我知道它正在寻找空白。 ^ - 在开头,$ - 在结尾,* - 任何地方
将空格放在字符串中的位置并不重要,它总是返回false并正确写入我的字符串(没有空格)。问题是为什么?这种模式如何运作?
我无法在任何地方找到答案。我真的很感激任何帮助。我是这种东西的新手。感谢。
答案 0 :(得分:3)
此模式正在查找空或“白色”字符串(包含仅白色字符的字符串(空格,制表符,换行符)):
^ # start of the string
\s # character class for white characters
* # repeat zero or more times
$ # end of the string
现在,自您的评论以来,如果您要查找的字符串包含白色字符但不仅或仅 (换句话说,{{ 1}}方法将为不包含空格的字符串返回test()
,您必须删除锚点(false
和^
)并更改量词* to +(表示重复一次或多次):
$
答案 1 :(得分:0)
你到底想要什么?当你没有定义问题时,很难知道答案是什么。
您的模式正在寻找一个包含0或更多空格(\s*
)的行,并且这些空格必须位于开头(^
),并且这些空格必须位于末尾({{ 1}})。所以它只匹配只有空格的行。