@tennoseremel yep.
Also, a one-line-shorter version that saves the zapped part into kill-ring:
(defun zap-up-to-last-char (char)
"Zap up to the last occurrence of `char' in the line"
(interactive "cZap up to char: ")
(let* ((start (point))
(end (save-excursion
(move-end-of-line 1)
(search-backward (char-to-string char) start t))))
(if end
(kill-region start end)
(error "Character not found"))))
@rayslava Yay :)
(defun zap-up-to-last-char (char)
"Zap up to the last occurrence of CHAR in the line."
(interactive "cZap up to the last occurence of char: ")
(let* ((case-fold-search (if (char-uppercase-p char) nil case-fold-search))
(start (point))
(end (save-excursion
(move-end-of-line 1)
(search-backward (char-to-string char) start t))))
(if end
(kill-region start end)
(error "Character not found"))))