2012-11-22 77 views
2

我該如何過濾此顯示所有蔬菜?先謝謝你。球拍/方案過濾

("Pecan" . (1982 .("nut". "AL"))) 

("Blackberry" . (2004 .("fruit". "AL"))) 

("Peach" . (2006 .("fruit". "AL"))) 

("Rice" . (2007 .("grain". "AR"))) 

("Orange" . (2005 .("fruit". "FL"))) 

("Huckleberry" . (2000 .("fruit". "ID"))) 

("Blackberry" . (2004 .("fruit". "KY"))) 

("Strawberry" . (1980 .("fruit". "LA"))) 

("WildBlueberry" . (1991 .("fruit". "ME"))) 

("BlueCrab" . (2000 .("food". "MD"))) 

("HoneycrispApple" . (2006 .("fruit". "MN"))) 

("Pumpkin" . (2000 .("fruit". "NH"))) 

("Chile" . (1965 .("vegetable". "NM"))) 

("Blueberry" . (2001 .("fruit". "NC"))) 

("ChokeCherry" . (2007 .("fruit". "ND"))) 

("WaterMelon" . (2007 .("vegetable". "OK"))) 

("Pear" . (2000 .("fruit". "OR"))) 

("Hazelnut" . (2000 .("nut". "OR"))) 

("Peach" . (1984 .("fruit". "SC"))) 

("Tomato" . (2003 .("fruit". "TN"))) 

("Jalapeno" . (1995 .("vegetable". "TX"))) 

("Apple" . (2000 .("fruit". "WA"))) 

回答

2

包都在一個單獨的列表(稱爲在下面的代碼lst)的元素,並在其上運行該過濾器:

(filter (lambda (x) (string=? "vegetable" (caddr x))) 
     lst) 

=> '(("Chile" 1965 "vegetable" . "NM") 
    ("WaterMelon" 2007 "vegetable" . "OK") 
    ("Jalapeno" 1995 "vegetable" . "TX")) 
+1

太謝謝你了!正是我需要讓我的開始 – CSE