我希望匹配包含带/不带空格的字符串,但它应至少包含一个非空格字符。这是正确的正则表达式吗?
/[\w]*[\s]+/
答案 0 :(得分:0)
当你想要匹配必须包含某些内容的字符串时,最好的方法是在捕获开始时放置一个正面的预测,所以如果你想确保有一些空白字符,那么你应该开始使用正则表达式模式((?=.*\s)...)
,其中...
是模式的其余部分。如果您的意思是空格字符(因为\s
也会匹配tab-char \t
和新行字符\n
和\r
),那么请从{{1}开始}。
现在 - 你的意思是什么?您使用了((?=.* )...)
- 这是\w
的快捷方式。如果这是你想要的,那么你的正则表达式模式是[a-zA-Z0-9_]
,resp。 ((?=.*\s)[\w\s]*)
。
但是这也会匹配一个空格字符,resp。仅限空格字符,仅此而已。你应该澄清你的问题,因为我相信你想要别的东西,而不是这个....
答案 1 :(得分:0)
应该匹配,
stackoverflow#2 - >应匹配任何字符,包括特殊字符
stackoverflow 2 - >即使以空格开头也应该匹配
不应该匹配,
-> containing only blank spaces