Bagaimana cara memeriksa elisp jika string adalah substring dari string lain?


25

Bagaimana cara memeriksa apakah suatu string s1merupakan substring dari string lain s2?

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

Jawaban:


36

Pendekatan standar Emacs Lisp adalah pencocokan ekspresi reguler:

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

14

cl-search dapat melakukan itu (dan juga mengembalikan indeks substring, jika ditemukan):

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

1
Terima kasih, ini menjawab pertanyaan dengan benar. Biarkan saya menunggu beberapa solusi lain.
Nama
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.