Forum: PC-Programmierung Hilfe benötigt - RegEx-Ausdruck für SIP-Routing


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Frank E. (Firma: Q3) (qualidat)


Bewertung
0 lesenswert
nicht lesenswert
Ich benötige mal ein kleine Hilfestellung. In der IP-TK-Anlage Gigaset 
T440 wird das eingehende Routing anhand der angerufenen Nummer 
ausgeführt. Diese angerufene Nummer (kommt mit dem to:-header im SIP) 
wird zunächst per RegEx von allem "Unrat" befreit, so dass die 
entscheidenden Ziffern übrig bleiben:

So sieht der to:-Header aus (Beispiel):

sip:16012345678@2.2.2.2;user=phone>

Wie muss ein Regex-Ausdruck aussehen, der Alles vor dem Doppelpunkt 
(inkl. Doppelpunkt) und Alles nach dem "@" (inkl. des @) entfernt?

Danke für Tips!

Nachtrag: Bisher liefen auf der TK-Anlage nur ISDN-Nummern auf, die 
ausschließlich Ziffern und evtl. ein "+" am Anfang enthielten. Der 
Regex-Ausdruck, der dieses korrekt bewirkte sah so aus (es blieben 4 
Ziffern der Rufnummer übrig, die dann fürs Routing genommen wurden):
1
s/^(?:(?:(?:0049|049|\+49|49|0)?030)?123)?(.*)/$1/

123 steht hier für den konstanten Teil eines Rufnummern-Bereiches, die 
danach folgenden unterschiedlichen Ziffern wurden fürs Routing auf die 
jeweilige Nebenstelle benutzt.

: Bearbeitet durch User
von regexr (Gast)


Bewertung
0 lesenswert
nicht lesenswert
(?:sip:)(\d){1,}(?:@)

ungetestet, dürfte dann in der ersten Capturegroup hängen

Kann man super auf regexr . com nachvollziehen und testen.

von T-Regex (Gast)


Bewertung
0 lesenswert
nicht lesenswert
> sip:16012345678@2.2.2.2;user=phone>
>
> Wie muss ein Regex-Ausdruck aussehen, der Alles vor dem Doppelpunkt (inkl. 
Doppelpunkt)
> und Alles nach dem "@" (inkl. des @) entfernt?

regexr schrieb:
> (?:sip:)(\d){1,}(?:@)

PCRE:
1
grep -i -o -P '(?<=sip:)[^@]+' -

finde ich einfacher ausgedrückt...

von RegulärExplodierter (Gast)


Bewertung
0 lesenswert
nicht lesenswert
> ungetestet
Testen geht hier recht simpel: http://rubular.com/

von Poh (Gast)


Bewertung
-2 lesenswert
nicht lesenswert
Frank E. schrieb:
> ...
> Danke für Tips!

Du meintest sicher: "Danke, für die Arbeit, die eigentlich ich hätte 
machen sollen. Aber dazu bin ich zu (faul|ungeschickt|gelangweilt)".

von Frank E. (Firma: Q3) (qualidat)


Bewertung
0 lesenswert
nicht lesenswert
Poh schrieb:
> Frank E. schrieb:
>> ...
>> Danke für Tips!
>
> Du meintest sicher: "Danke, für die Arbeit, die eigentlich ich hätte
> machen sollen. Aber dazu bin ich zu (faul|ungeschickt|gelangweilt)".

Voll daneben. Der eingangs von mir angegebne Ausdruck war voll in 
Ordnung, ich hatte nur die Vermutung, dass es evtl. ein anderer sein 
müsste. Die Ursache für das zunächst Nicht-Funktionieren war an ganz 
anderer Stelle ...

Ich stell mir übrigens gerade vor, wie dir nach dem nächsten Arztbesuch 
dieser hinterher ruft: "Danke, für die Arbeit, die eigentlich ich hätte
> machen sollen. Aber dazu bin ich zu (faul|ungeschickt|gelangweilt)".

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.