尝试创建一个与左括号匹配的模式,并获取它与它遇到的下一个空间之间的所有内容.我认为\[.*\s
会实现这一点,但它从第一个开始括号获得了所有内容.我怎么能告诉它在下一个空间打破?
\[[^\s]*\s
Run Code Online (Sandbox Code Playgroud)
这.*
是一个贪婪的人,会吃掉所有东西,包括空格,直到最后一个空白字符.如果用\S*
or 替换它[^\s]*
,它将只匹配除空格之外的零个或多个字符的块.
可能需要遮盖开口支架.如果用^\s否定\ s,表达式应该吃掉除空格之外的所有东西,然后是空格,这意味着直到第一个空格.
您可以使用不情愿的限定符:
[.*?\s
Run Code Online (Sandbox Code Playgroud)
或者匹配所有非空格字符:
[\S*\s
Run Code Online (Sandbox Code Playgroud)