XF 1.5 RegEx - wie schreibt man Links um?

Dieses Thema im Forum "Fragen und Antworten zu XenForo" wurde erstellt von otto, 1. Mai 2016.

  1. otto

    otto AD Lizenznehmer

    2.684
    1.083
    7. Juli 2015
    LW-Meister
    Leipzig
    Moin,

    erste Frage - wie schreibt man diese Links:
    Code:
    http://www.zetor-forum.de/forum/viewtopic.php?f=36&t=364
    in diese um:
    Code:
    https://www.zetor-forum.de/forum/threads/364/
    Schätze mal mein Amateur RegEx Ausdruck würde zwar entsprechende Links finden:
    Code:
    ((http):\/\/www.zetor-forum.de\/forum\/viewtopic.php\?f\=\d\d&t=\d\d\d)
    Aber ich denke mal so leicht gehts dann doch nicht und wie sagt man ihm, das er die letzten 3 Ziffern übernehmen soll ...?

    Die Seite bespiele ich gerade: RegExr: Learn, Build, & Test RegEx

    Und versuche hier zu lernen: RegexOne - Learn Regular Expressions - Lesson 1: An Introduction, and the ABCs
     
  2. otto

    otto AD Lizenznehmer

    2.684
    1.083
    7. Juli 2015
    LW-Meister
    Leipzig
    Für das spezifische Beispiel oben: Wie übergebe ich die 364 am Ende des Such-Strings in den String der den Such-String ersetzen soll?
     
  3. au lait

    au lait Administrator Lizenznehmer

    1.889
    925
    7. Juli 2015
    Singen
    Parameter sind bissel problematischer!
    - das einfachste wäre; die Datei anlegen und innerhalb PHP dann die Variable abgreifen und weiter verarbeiten
    - das Andere wäre htaccess zu verwenden. denke dies ist was Du suchst, wenn DU schreibst Umleiten.

    Code:
    RewriteCond %{QUERY_STRING} t=([0-9]+)(&|$)
    RewriteRule viewtopic\.php(.*+)$ http://www.domain.de/pfad/%1/? [R=301,L]
    %1 enthält die Value des parameters t

    htaccess Umleitungen kannst Du wunderbar hier testen
    htaccess Tester - madewithlove
     
  4. otto

    otto AD Lizenznehmer

    2.684
    1.083
    7. Juli 2015
    LW-Meister
    Leipzig
    Nein. .htaccess hab ich ja, aber ich möchte mal Ordnung rein bringen und alte Links in alten Beiträgen von ehem. phpBB auf XenForo ändern. Suche und Ersetze würde über Kier s Search And Replace Add-on laufen. Sorry, das hätte ich dazu schreiben sollen.

    Aber es muss ja irgendwie gehen und ich versuch mich da auch bisl einzuarbeiten und in ersten Probeläufen hat das suchen und finden auch scheinbar geklappt, nur wie man dann einen spezifischen Teil (hier z.B. den Ziffernblock am Ende des Strings) der neuen Zeichenketten als spezifischen Teil an spezifischer Stelle einfügt... das erschließt sich mir noch nicht.
     
  5. au lait

    au lait Administrator Lizenznehmer

    1.889
    925
    7. Juli 2015
    Singen
    ach Du willst das direkt im Post änder? ;)
     
  6. otto

    otto AD Lizenznehmer

    2.684
    1.083
    7. Juli 2015
    LW-Meister
    Leipzig
  7. otto

    otto AD Lizenznehmer

    2.684
    1.083
    7. Juli 2015
    LW-Meister
    Leipzig
    Neuer Versuch:

    Finde:
    Code:
    #http:\/\/www.zetor-forum.de\/forum\/viewtopic.php\?f\=(\d+)\&t\=(\d+)#siu
    Bsp:
    Code:
    http://www.zetor-forum.de/forum/viewtopic.php?f=36&t=362
    Das Suchergebnis splittet sich somit in:
    Code:
    |36|362
    Replace:
    Code:
    https://www.zetor-forum.de/forum/threads/\2/
    "\2" ist hier eine Art Variable für die 2. Position des Suchergenbis im Split des Suchstrings

    Ergebnis:
    Code:
    https://www.zetor-forum.de/forum/threads/362/
    Hab das mit dem "The RegEx Coach" Windows Tool gemacht und werde das mal in meinem Test-XenForo probieren. :denk3
     
  8. otto

    otto AD Lizenznehmer

    2.684
    1.083
    7. Juli 2015
    LW-Meister
    Leipzig
    Ach ja - funktioniert:
    upload_2016-5-1_15-26-4.png

    Kann da bei Bedarf mal versuchen ansatzweise ein kleines Tutorial daraus zu machen. Ist ja immer wieder interessant wenn man Links oder BBcodes z.B. nach einem Umzug anpassen muss. Oder "einfach" mal die Links in Posts zu einer externen Seite wegen Änderungen an deren URL ändern möchte... :) :like
     
    McAtze und au lait gefällt das.
OK Mehr Informationen

Diese Seite verwendet Cookies. Mit Deinem Klick auf OK, stimmst Du dem setzen von Cookies zu. Andernfalls werden keine gesetzt, was die Funktionalität einschränkt.