他们似乎都能工作,但我被告知在形成RegExp时应该同时使用两个?
\s
匹配任何空白字符,包括制表符。 \t
只匹配制表符。
由于 \t
是 \s
的子集,因此您不必同时使用两者。
\t
称为\s
的一个子集,更多地是作为其"元素"。 - arshajii\s
匹配单个空格字符,包括空格、制表符、换页符、换行符和其他Unicode空格。
\t
匹配单个制表符。
如果您使用 \s
,则不需要包含 \t
。
有关正则表达式模式的更多信息,请参见此处:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp
\t
是一个字面上的制表符,而 \s
是一个预定义的字符类。 \s
匹配任何空白字符,而 \t
仅匹配制表符(这也被 \s
匹配)。
这类似于询问 \d
和 0
之间的区别。 0
是一个字面上的 0
,而 \d
是任何数字。
\s
包含所有的空白字符。例如,在 Java 中,\s
是 [\t\n\x0b\r\f]
。 \t
只是一个单独的制表符,所以您不需要同时使用两者。
[\s\t]
是多余的。\t
已经包含在\s
中,因此您不必包括\t
。在\s\t
的情况下,\t
不是多余的。它正在寻找一个空格,后面跟着一个制表符。因此,如果您正在处理字符类,请小心。 - Shaz