我希望我的正则表达式返回一个枚举器,它将返回非数字单词块,我能得到的最好方法是什么?
我试过如下:
regexp= /(?=w+)(?=^(?:(?!d+).)*$)/
"this is a number 1234".split(regexp) # ["this is a number 1234"]
我期望(?=w+)应该确保它是否是单词,我期望(?=^(?:(?!d+).)*$)确保它不包含任何数字。
我期望输出:
["this", "is", "a", "number"]
scan
比split
更容易:
regexp = /b[[:alpha:]]+b/
p "this is a number 1234".scan(regexp)
# => ["this", "is", "a", "number"]
尝试以下
p "this is a number 1234".scan(/D+/).first.split(' ')