我想从主列表中生成正则表达式。示例列表:
(setq name-and-keyword-list
(list
'("pFoo" ("foo" "bar" "baz"))
'("pBar" ("apples" "pears" "orange"))))
(regexp-opt '("foo" "bar" "baz"))
有效且(car (cdr name-and-keyword-list))
返回(("foo" "bar" "baz"))
,这几乎与我手动传递给regexp-opt
的参数相同。
尝试将所有内容组合成一个调用失败:
(regexp-opt (cdr(car name-and-keyword-list)))
返回Wrong type argument: stringp, ("foo" "bar" "baz")
。我可以使用不同的方式访问列表元素,以便它们是regexp-opt
的有效参数吗?
答案 0 :(得分:1)
这是一个修复:
(setq name-and-keyword-list
`(("pFoo" ("foo" "bar" "baz"))
("pBar" ("apples" "pears" "orange"))))
(regexp-opt (cadar name-and-keyword-list))