正则表达式:如果句子超过 3 个字符,则获取句子的第一个单词


Regular Expression: Get first word of a sentence if it has more than 3 chars

我需要一个正则表达式,如果句子超过 3 个字符或完整的句子,它就会获得句子的第一个单词。

例如:

Hello world -> Hello World
Eat jam -> Eat

谢谢!

如果第一个

单词少于或等于 3 个字符,则采用第一个单词,否则采用完整的句子。但是对于该要求,您可以使用

^[a-zA-Z]{1,3}(?![a-zA-Z])|^.*$

快速电源外壳测试:

PS> $re = '^[a-zA-Z]{3}(?![a-zA-Z])|^.*$'
PS> 'Hello world','Eat jam' |%{$_-match $re|Out-null;$Matches}
Name                           Value
----                           -----
0                              Hello world
0                              Eat

使用此正则表达式^'s*?'w{3,}'b.+