[GastForen Programmierung/Entwicklung PHP und MySQL preg_replace doppelte Zeichen entfernen funzt nicht

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

preg_replace doppelte Zeichen entfernen funzt nicht

fraenzer
Beiträge gesamt: 5

13. Nov 2006, 12:04
Beitrag # 1 von 9
Bewertung:
(5452 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!

Hab hier ne kleine Hilfsfunktion, die mir aus einem String ein paar doppelte Zeichen entfernen soll:

Code
private function doppelteZeichenEntfernen($zeichen, $variable) { 
return preg_replace("/^\\".$zeichen."{2,0}$/", $zeichen, $variable);
}


$zeichen ist hier beispielsweise ein Punkt oder n Plus oder so, die $variable symbolisiert meinen String.
Irgendwie will der aber nich so ganz, bei einer Eingabe von beispielsweise 10 Punkten hintereinander kürzt er mir das dann nicht auf einen Punkt, sondern läßt die 10 stehen.

Schonmal danke für Eure Hilfe!

Gruß

fraenzer
X

preg_replace doppelte Zeichen entfernen funzt nicht

oesi50
  
Beiträge gesamt: 2315

13. Nov 2006, 13:00
Beitrag # 2 von 9
Beitrag ID: #261587
Bewertung:
(5450 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
wie wärs denn damit:


Code
preg_replace('/(.)\1/', '$1', $variable) 



als Antwort auf: [#261559]

preg_replace doppelte Zeichen entfernen funzt nicht

fraenzer
Beiträge gesamt: 5

13. Nov 2006, 13:20
Beitrag # 3 von 9
Beitrag ID: #261595
Bewertung:
(5442 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jetzt komm ich nicht so ganz mit.
(.) : liefert mir der Part alle Abschnitte meines Strings, bei dem Punkte in irgendeiner Häufigkeit aufeinanderfolgen?

Dann macht mir das "\i" noch Kummer, oder hast Du den \ mit nem $ verwechselt.

Danke


als Antwort auf: [#261587]

preg_replace doppelte Zeichen entfernen funzt nicht

oesi50
  
Beiträge gesamt: 2315

13. Nov 2006, 13:48
Beitrag # 4 von 9
Beitrag ID: #261603
Bewertung:
(5440 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
/(.)\1/

dieser Ausdruck trifft alle Zeichen, die von sich selbst gefolgt werden.
Durch die Gruppierung () wird aber nur das erste Zeichen in $1 gespeichert.
Mit $1 wird nun der gefundene Ausdruck durch dieses Zeichen ersetzt.

Bsp:

aus aabbcc
wird abc


als Antwort auf: [#261595]

preg_replace doppelte Zeichen entfernen funzt nicht

fraenzer
Beiträge gesamt: 5

13. Nov 2006, 14:16
Beitrag # 5 von 9
Beitrag ID: #261615
Bewertung:
(5433 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
OK, das hab ich verstanden und auch erfolgreich ausgeführt, vielen Dank schonmal!

Jetzt hab ich aber das Problem, dass ich da natürlich ein wenig Dynamik reinbringen will, sprich der Punkt muss nicht unbedingt ein Punkt sein. Hab mal versucht, dass mit ner normalen Variable zu machen, aber dummerweise motzt er da sofort, funzt werder mit "" noch mit ''. Mhm!


als Antwort auf: [#261603]

preg_replace doppelte Zeichen entfernen funzt nicht

oesi50
  
Beiträge gesamt: 2315

13. Nov 2006, 14:54
Beitrag # 6 von 9
Beitrag ID: #261629
Bewertung:
(5428 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
wie dynamisch soll es denn noch werden?
Der Punkt bedeutet doch schon jedes Zeichen.

Zitat . match any character except newline (by default)



als Antwort auf: [#261615]

preg_replace doppelte Zeichen entfernen funzt nicht

fraenzer
Beiträge gesamt: 5

13. Nov 2006, 14:59
Beitrag # 7 von 9
Beitrag ID: #261630
Bewertung:
(5424 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Mhm, da is was dran ;-)

Dann hab ich natuerlich das Problem, dass auch aufeinanderfolgende gleiche Buchstaben ersetzt werden.

Meine Zeichen waeren erstmal das Leerzeichen, +, -, /, .
Meine Eingebung sagt mir, ich muss die Dinger mit nem \ maskieren, aber die dann via php-Variable in meinen Ausdruck zu bringen, da motzt mir mein Browser immer rum.

Es waer natuerlich kein Problem, das preg_replace einmal n paar mal im Quellcode zu haben mit den einzelnen Zeichen, aber das is ja ziemlich unschön.


als Antwort auf: [#261629]
(Dieser Beitrag wurde von fraenzer am 13. Nov 2006, 15:05 geändert)

preg_replace doppelte Zeichen entfernen funzt nicht

oesi50
  
Beiträge gesamt: 2315

13. Nov 2006, 15:22
Beitrag # 8 von 9
Beitrag ID: #261639
Bewertung:
(5417 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
aha, das ist was anderes

der gesuchte Ausdruck lautet:
Code
~([ +-/.])\1+~ 



als Antwort auf: [#261630]

preg_replace doppelte Zeichen entfernen funzt nicht

fraenzer
Beiträge gesamt: 5

13. Nov 2006, 15:45
Beitrag # 9 von 9
Beitrag ID: #261649
Bewertung:
(5413 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Yuppi!

Vielen Dank, hat funktioniert.
Einzig die Zeichen einzeln mußte ich noch mit nem \ maskieren, da er sonst wieder gemotzt hat.

Gruß

fraenzer


als Antwort auf: [#261639]
X

Aktuell

Web / SEO / Blockchain / Betriebssystem
300

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

https://www.impressed.de/schulung.php?c=sDetail&sid=327

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!