我有一个这样的字符串:"Men's Beech River Cable T-Shirt"
我怎样才能从这个字符串中获取类别?
str = "Men's Beech River Cable T-Shirt"
str2 = "MEN'S GOOSE EYE MOUNTAIN DOWN VEST"
cat1 = str1.split.last # T-Shirt
cat2 = str2.split.last # VEST
TOPS = %w(jacket vest coat blazer parka sweater shirt polo t-shirt)
期望的结果:
category_str1 = "Tops" # Since T-Shirt (shirt) is in TOPS constant.
category_str2 = "Tops" # Since vest is in TOPS const.
我不知道如何更好地描述我的问题,我希望你能从提供的例子中理解它。
最佳答案
str = "Men's Beech River Cable T-Shirt"
cat_orig = str.split.last # T-Shirt
TOPS = %w(jacket vest coat blazer parka sweater shirt polo)
RE_TOPS = Regexp.union(TOPS)
category = "Tops" if RE_TOPS =~ cat_orig.downcase
请注意 %w() 样式数组语法中没有逗号。
关于arrays - Ruby 匹配数组中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33174253/