discard """ output: "@[(, +, 1, 2, )]" """ import re let str = "(+ 1 2)" var tokenRE = re"""[\s,]*(~@|[\[\]{}()'`~^@]|"(?:\\.|[^\\"])*"|;.*|[^\s\[\]{}('"`,;)]*)""" echo str.findAll(tokenRE)