如何在第一个空格正则表达式之后选择所有内容



我有一个简单的小字符串"星期三 09 九月",我想选择"09 九月"

这将从第一个空格获取所有内容:

\s(.*) (从正则表达式获取第一个空格后的所有内容)

但它带有空间,我想摆脱它

获取该正则表达式的第一个捕获组:

"Wed 09 Sept" =~ /s(.*)/ 
selection     = $1
# => "09 Sept"

=~运算符将模式与字符串匹配。$1$2$3等变量是指捕获组。

将第一个空格和其余空格分组/(s)(.*)/,例如:

pry(main)> m = /(?'first's)(?'rest'.*)/.match 'Wed 09 Sept'
=> #<MatchData " 09 Sept" first:" " rest:"09 Sept">
pry(main)> m[:rest]
=> "09 Sept"

您可以使用K丢弃以前匹配的字符。

^S*sK.*

^S* K.*

sK.*

 K.*

S*匹配零个或多个非空格字符,s+匹配一个或多个空格。 K丢弃先前匹配的字符,这些字符不会在决赛中打印出来。现在.*将匹配所有剩余的字符。这将在决赛中打印。

演示

1 演示 2

相关内容

  • 没有找到相关文章

最新更新