$_ = 'de ad be ef #junk'; /^(\w\w)(?: (\w\w))*/; #### $_ = 'de ad be ef #junk'; /^(\w\w(?: \w\w)*)/; my @capture = split ' ', $1; #### $_ = 'de ad be ef #junk'; my @capture = /\G(?:^|\ )(\w\w)/g; #### $_ = 'de ad be ef #junk'; my @capture; while(/\G(?:^|\ )(\w\w)/g) { push @capture, $1; } #### /(?:^|\G\ )(\w\w)/g