2011-01-13 82 views
4

我想在另一个字符串中寻找一个字符串(基本上是C中的strstr),我在elisp手册中找不到任何东西。strstr()in emacs lisp?

我是否必须重新实现所有这些,或者我是否错过了某些明显的东西?

回答

5

或者你可以使用正则表达式:

(string-match-p "foo" "barfoo") 
3 

(string-match "foo" "barbar") 
nil 

进一步的信息,请参阅Regexp-Search

12

字符串是序列。因而搜索意愿工作:

(search "foo" "in foo-bar") 
3 
+0

感谢你们的答复。我添加了这个评论来解释为什么我选择将@tuos的回答标记为已接受:在我的linux系统中,“search”需要一个“(require'cl)”,所以它稍微简洁一些。我不确定case是如何处理的,而在`string-match`的文档中是明确的。不过谢谢。 – Gyom 2011-01-16 12:07:12