2014-12-31 3 views
5

Ich versuche, meine Codebasis für Code, der eine Funktion mit dem Namen "foo" ruft, so suche ich nach "foo (" aber die Ergebnisse, die ich bin immer enthält alles, was mit dem Wort foo darin, die CSS, Kommentare und Strings enthält, die nicht einmal die hintere offene Klammer haben.In OpenGrok wie machen Sie eine vollständige Suche nach speziellen nicht-alphanumerischen Zeichen

Wer weiß, wie die Suche nach Zeichenketten zu tun, wie ),"'?

Sonderzeichen enthalten

Antwort

0

Wenn Sie nach Sonderzeichen suchen, versuchen Sie, das Escapezeichen vor dem Zeichen zu verwenden, zB \, zB "foo \ (".

Außerdem habe ich eine Antwort auf eine ähnliche Frage gefunden (siehe http://marc.info/?l=opensolaris-opengrok-discuss&m=115776447032671). Es scheint, dass häufig vorkommende Sonderzeichen aufgrund von Leistungsproblemen nicht indexiert werden, daher ist es möglicherweise nicht möglich, nach solchen Mustern zu suchen.

0

Opengrok unterstützt das Entfernen von Sonderzeichen, die Teil der Abfragesyntax sind. Aktuelle Sonderzeichen sind: + - & & || !() {} []^"~ *?: \/

Um diese Zeichen zu umgehen, verwenden Sie das \ vor dem Zeichen. Um zum Beispiel nach (1 + 1) zu suchen: 2 benutzen Sie die Abfrage \ (1 \ +1) \: 2