![]() |
Mal wieder Delphi nach PHP Probleme
Ich habe diesen Codeschnipsel. Am Ende sollte s1 in etwa 50 bis 70 Zeichen lang sein.
Bei meinem PHP-Versuch ist der String am Ende aber so lang, dass selbst Firefox Probleme mit der Anzeige bekommt. Also der verlängert sich stetig exponentiell wie es scheint. Weiß wer Abhilfe? Delphi
Delphi-Quellcode:
PHP
s1 := aAlphabet;
s2 := ''; for i := 1 to Length(ss) do begin x := Pos(ss[i], s1); if x > 0 then s1 := Copy(s1, 1, x - 1) + Copy(s1, x + 1, Length(s1)); end;
Code:
$s1 beinhaltet anfangs ein Alphabet sowie alle Zahlen 0-9.
$s1 = $alphabet;
$s2 = ''; for ($i = 0; $i < strlen($ss); $i++) { $x = strpos($s1, $ss[$i]); if ($x > -1) { // bis hierhin ist alles korrekt // s1 = Copy(s1, 1, x - 1) + Copy(s1, x + 1, Length(s1)); $s1 = substr($s1, 0, ($x1 - 1)) . substr($s1, ($x + 1), strlen($s1) - 1); // DIESE Zeile ist falsch. Deswegen ist $s1 dann fortlaufend auch falsch. } } $ss ist ein zufälliger String etwa 10 bis 16 Zeichen lang. |
AW: Mal wieder Delphi nach PHP Probleme
Woher kommt denn plötzlich $x1?
|
AW: Mal wieder Delphi nach PHP Probleme
Das war wohl Fehler Nummer 1. Ein echt dummer. Aber ich glaube es gibt noch einen zweiten denn ab der dritten Iteration ist $i um mehrere Stellen verschoben was sich dann immer weiter steigert. Dass PHP-Strings bei 0 beginnen weiß ich. Aber ich bin mir nicht sicher, wie die Zeile abzuändern ist.
|
AW: Mal wieder Delphi nach PHP Probleme
Code:
<?php
$alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; $ss = "DFECDFR12345"; $s1 = $alphabet; echo $ss."<br>\n"; echo $s1."<br>\n"; for ($i = 0; $i < strlen($ss); $i++) { $x = strpos($s1, $ss[$i]); echo $ss[$i] . " an " . $x . ". Stelle <br>\n"; if ($x > -1) { // s1 = Copy(s1, 1, x - 1) + Copy(s1, x + 1, Length(s1)); $s1 = substr($s1, 0, ($x)) . substr($s1, ($x + 1), strlen($s1)); // Bedeutung von start und length bei null indizierten Strings bedenken; negativer start parameter nimmt string von rechts } echo "$i) ". $s1 . "<br>\n"; } echo $s1." (PHP)<br>ABGHIJKLMNOPQSTUVWXYZ06789 (Pascal)\n"; ?> |
AW: Mal wieder Delphi nach PHP Probleme
Das Ergebnis ist leider nicht das, was mir Delphi ausgibt.
Ignorier das. Copy und Paste Fehler meinerseits. Irgendwas hatte die Zwischenablage zerhauen. |
AW: Mal wieder Delphi nach PHP Probleme
Zitat:
Code:
$s1 = preg_replace('/[DFECDFR12345]/', '', $ss);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz