From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nicolas Richard Newsgroups: gmane.emacs.help Subject: Re: Regex replace for numbers Date: Fri, 03 Oct 2014 16:40:03 +0200 Message-ID: <87wq8hgqt8.fsf@geodiff-mac3.ulb.ac.be> References: <87zjdexa89.fsf@robertthorpeconsulting.com> <87zjdd9y4g.fsf@panda.goosenet.in> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1412347245 31036 80.91.229.3 (3 Oct 2014 14:40:45 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 3 Oct 2014 14:40:45 +0000 (UTC) Cc: help-gnu-emacs@gnu.org To: Udyant Wig Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Fri Oct 03 16:40:38 2014 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Xa429-0002ss-J7 for geh-help-gnu-emacs@m.gmane.org; Fri, 03 Oct 2014 16:40:37 +0200 Original-Received: from localhost ([::1]:39698 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xa429-0006qu-8R for geh-help-gnu-emacs@m.gmane.org; Fri, 03 Oct 2014 10:40:37 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44168) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xa41m-0006qn-Rc for help-gnu-emacs@gnu.org; Fri, 03 Oct 2014 10:40:22 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xa41f-0005cp-D3 for help-gnu-emacs@gnu.org; Fri, 03 Oct 2014 10:40:14 -0400 Original-Received: from mxin.ulb.ac.be ([164.15.128.112]:65398) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xa41f-0005Xm-7r for help-gnu-emacs@gnu.org; Fri, 03 Oct 2014 10:40:07 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AisKAOGzLlSkD4Xx/2dsb2JhbABghDm2agEBAQEBAQabWgKBIAF7hAQBAQR5EAshJQ8BBA08E4gpAQMRqy2MHgFKDYcRAReGFoIxhTaCMQeESwWbLYlXh2mGUYNlOy+CSgEBAQ Original-Received: from mathsrv4.ulb.ac.be (HELO geodiff-mac3.ulb.ac.be) ([164.15.133.241]) by smtp.ulb.ac.be with ESMTP; 03 Oct 2014 16:40:05 +0200 In-Reply-To: <87zjdd9y4g.fsf@panda.goosenet.in> (Udyant Wig's message of "Fri, 03 Oct 2014 17:13:59 +0530") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.93 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 164.15.128.112 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:100245 Archived-At: Udyant Wig writes: > Is there a way to save the major-mode of the buffer before entering the > above code, change to emacs-lisp-mode and then to enable the original > major-mode again? You don't really need to do that. Simply using the syntax table should be sufficient in this case : (with-syntax-table emacs-lisp-mode-syntax-table (save-excursion (goto-char (point-min)) (while (re-search-forward "[0-9]" nil t ) (let ((bounds (bounds-of-thing-at-point 'sexp)) (number (number-at-point))) (when number (delete-region (car bounds) (cdr bounds)) (insert (format "%s" number))))))) -- Nicolas Richard