php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 26-02-2013, 14:25
tjark
 Registrierter Benutzer
Links : Onlinestatus : tjark ist offline
Registriert seit: Feb 2013
Beiträge: 1
tjark befindet sich auf einem aufstrebenden Ast
Standard RegEx Problem

Moin,

bin gerade dabei eine kleine Suchabfrage zu erstellen und sehe den Wald vor lauter Bäumen nicht mehr.

Das ganze zu erklären wäre glaube schwieriger als sich den Code einmal anzuschauen. Deshalb hier einmal der PHP-Code.

Code:
$search_pattern       = array();
$search_pattern[0]    = '#([A-Za-z0-9]+) außerhalb ([A-Za-z0-9]+)#i';
$search_pattern[1]    = '#([A-Za-z0-9]+) außerhalb von ([A-Za-z0-9]+)#i';

$search_replace        = array();
$search_replace[0]    = 'OK: $1 außerhalb $2';
$search_replace[1]    = 'OK: $1 außerhalb  von $2';

echo preg_replace($search_pattern, $search_replace, $string);
Ich möchte wenn ich in $string "spielen außerhalb von hamburg" eingebe, nur den $search_replace[1] ausführen und nicht zusätzlich $search_replace[0].

Das aktuelle Ergebnis wäre:
Code:
OK: OK: spielen außerhalb von hamburg
Wie kann ich den restlichen String quasi als Pflichtbediung setzen?

Eine andere Idee wäre von mir gewesen, das ich vorher einfach von $string die wörter zähle und dannach den Array anlege, ich möchte das ganze aber recht variable halten.

Hat jemand eine Idee?

Gruß

Geändert von tjark (26-02-2013 um 16:54 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 01-03-2013, 22:29
Melewo
 Registrierter Benutzer
Links : Onlinestatus : Melewo ist offline
Registriert seit: Jan 2013
Beiträge: 365
Melewo befindet sich auf einem aufstrebenden Ast
Standard

Mehr fällt mir dazu gerade nicht ein. Eine andere Möglichkeit bestünde darin, "außerhalb von" und nur "außerhalb" gleich mit stripos abzufragen. Ansonsten müsstest Du da tiefer in RegEx eintauchen und dann Ausdrücke mit "gefolgt von" und "nicht gefolgt von" oder so verwenden.


PHP-Code:
<?php

$string 
"spielen außerhalb von Hamburg";

$search_pattern = array();
$search_replace = array();

$search_replace[1] = 'OK: $1 außerhalb von $2';
$search_pattern[1] = '#([a-z0-9]+) außerhalb von ([a-z0-9]+)#i';

$gefuellt preg_replace($search_pattern$search_replace$string);

$pos stripos($gefuellt'OK:');

if (
$pos !== false) {
    echo 
$gefuellt;
}
else {
    
$search_pattern[0] = '#([a-z0-9]+) außerhalb ([a-z0-9]+)#i';
    
$search_replace[0] = 'OK: $1 außerhalb $2';

    
$gefuellt preg_replace($search_pattern$search_replace$string);
    echo 
$gefuellt;
}
?>
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
regex Problem schlattm PHP Developer Forum 2 24-07-2008 12:23
[REGEX] problem mit regex kyo PHP Developer Forum 4 27-10-2006 08:45
RegEx Problem LukasS PHP Developer Forum 1 31-08-2005 10:19
[REGEX] Problem mit Regex in .htaccess daniel987 Fragen zu Installation & Konfiguration (LAMP, WAMP & Co.) 2 21-06-2005 01:10
RegEx Problem Pascal P. PHP Developer Forum 10 23-12-2002 19:07

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:53 Uhr.