Match nur, wenn vor oder nach einer Ziffer kein @ ste

Ich habe diesen regulären Ausdruck, um nach Telefonnummern in einer Codebasis zu suchen:

\\d{3}[\.\s-]?\d{3}[\.\s-]?\d{4}\g

Wie kann ich das so ändern, dass eswird nich Instanzen entsprechen, bei denen der Nummer eine Ziffer vorangestellt oder gefolgt wird?

18005555555 (should not match)
80055555551 (should not match)
"8005555555" (should match)
s800-555-5555 (should match)
8005555555 (should match)
800.555.5555 (should match)

Bearbeite: Ich versuche nicht, "das ganze Wort zu finden", da es nicht ausreicht, dass dem Treffer ein Leerzeichen vorangestellt und gefolgt wird. Siehe das dritte Beispiel oben, das ebenfalls eine Übereinstimmung zurückgeben sollte.

Ich möchte nur mit Instanzen übereinstimmen, bei denen der Übereinstimmung kein @ vorangestellt oder gefolgt is eine Ziffer.

In anderen Worten

[NOT DIGIT][PHONE NUMBER][NOT DIGIT]

Antworten auf die Frage(2)

Ihre Antwort auf die Frage