help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re:Re: regular expression in find-tag-regexp


From: Shiyuan
Subject: Re:Re: regular expression in find-tag-regexp
Date: Fri, 30 Sep 2011 17:55:52 -0500


------------------------------

Message: 3
Date: Fri, 30 Sep 2011 09:53:17 +0300
From: Eli Zaretskii <eliz@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: regular _expression_ in find-tag-regexp
Message-ID: <83aa9med2a.fsf@gnu.org" target="_blank">83aa9med2a.fsf@gnu.org>

>> Date: Thu, 29 Sep 2011 17:54:00 -0500
>> From: Shiyuan <gshy2014@gmail.com>
>>
>>      I notice that the same regular _expression_ will give different matching
>> result in find-tag-regexp (C-M-.) and in isearch-forward-regexp (C-M-S). \

>Where did you use C-M-S?  Was it in the buffer that visits the TAGS
>table, or was it in the buffer where you have the source file?
>find-tag-regexp does the former.  It uses re-search-forward, btw, not
>isearch-forward-regexp.

I use find-tag-regexp in the buffer visiting the source file(.cpp/.h file) and would like to get to the definition of some functions in some other files.

>> If I use the Mat.*GetArray.* to search, find-tag-regexp will only match
>> MatGetArray_SeqAIJ but isearch-forward-regexp will match all except the
>> lower case matgetarray(). If I use the MatGetArray, find-tag-regexp will
>> match all of them including the matgetarray()? Anyone can explain why it is
>> so? If I want find-tag-regexp to find all of them( with or without the
>> matgetarray()), what regexp should I use? Thank you.

>It would help if you show what's in your TAGS file for these
>functions.
I open the TAGS with emacs and the "^?" belows indicate  some unprintable characters.
PetscErrorCode MatGetArray_SeqAIJ
PetscErrorCode  MatGetArray(^?6203,228137
PetscErrorCode MatGetArray_SeqBAIJ(^?2598,103252
void PETSC_STDCALL matgetarrayf90_(^?28,985
void PETSC_STDCALL matgetarray_(^?189,8574
PetscErrorCode MatGetArray_MPIDense(^?186,6182
PetscErrorCode MatGetArray_SeqDense(^?1428,50013

If I use re-search-forward to search the regexp Mat.*GetArray.* on the buffer visitng the TAGS file, it can also locate all the lines above. So find-tag-regexp with the exact same regexp only gives me one match?  and btw what does the number mean in the TAGS file?

Thanks

reply via email to

[Prev in Thread] Current Thread [Next in Thread]