我正在扫描产品名称以检查其中是否存在特定字符串.现在它适用于单个字符串,但我怎样才能扫描多个字符串?例如,我想扫描苹果和微软
product.name.downcase.scan(/apple/)
Run Code Online (Sandbox Code Playgroud)
如果检测到字符串,我得到["apple"]如果没有,那么它返回nil []
您可以使用正则表达式替换:
product.name.downcase.scan(/apple|microsoft/)
Run Code Online (Sandbox Code Playgroud)
如果您需要知道的是字符串是否包含任何指定的字符串,则最好使用single match =〜而不是scan.
str = 'microsoft, apple and microsoft once again'
res = str.scan /apple|microsoft/ # => res = ["microsoft", "apple", "microsoft"]
# do smth with res
# or
if str =~ /apple|microsoft/
# do smth
end
Run Code Online (Sandbox Code Playgroud)