Como verificar no elisp se uma string é uma substring de outra string?


25

Como verificar se uma string s1é uma substring de outra string s2?

Por exemplo (test-substring "f t" "df tj") --> t, (test-substring "ft" "df tj") --> nil.

Respostas:


36

A abordagem padrão do Emacs Lisp é a correspondência de expressões regulares:

(string-match-p (regexp-quote needle) haystack)

14

cl-search pode fazer isso (e também retorna o índice da substring, se encontrado):

ELISP> (cl-search "f t" "df tj")
1 (#o1, #x1, ?\C-a)
ELISP> (cl-search "ft" "df tj")
nil

1
Obrigado, isso responde corretamente à pergunta. Deixe-me esperar por outras soluções.
Nome
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.