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.