Tôi có một số mã sử dụng (looking-back … (line-beginning-position))
. Tài liệu của các looking-back
tiểu bang rằng tốt hơn hết là tránh chức năng này vì sự chậm chạp. Tôi tò mò sẽ làm theo cách tiếp cận nhanh hơn?
(save-excursion
(goto-char (line-beginning-position))
(looking-at regexp stuff))
Nó sẽ nhanh hơn. Nhưng đây không phải là một mã tương đương.
—
abo-abo
@ abo-abo, vâng, không phải vậy. Nhưng trong trường hợp của tôi, tôi tin rằng tôi có thể giới thiệu
—
Geradlus_RU
looking-at
phiên bản dễ dàng. Cảm ơn bạn.
Vấn đề hiệu suất lớn nhất của việc nhìn lại là khi nó không có giới hạn (hoặc giới hạn ở xa). Nếu bạn xem xét
—
YoungFrog
(with-temp-buffer (insert (make-string 10000 ?x)) (looking-back "y"))
Bạn sẽ thấy nó rất nhanh. Bây giờ thay đổi regrec thành ".*y"
thay thế: nó chậm đến mức không thể chịu được mặc dù người đọc rõ ràng rằng điều này không bao giờ có thể sánh được.