zeichen aus zeichenkette entfernen

cent

Mitglied
hi,
wie kann man von einer zeichenkette mehere zeichen entfernen. also ich habe z.B.

$der_code = '

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td>sfgsfgsfdg</td>
</tr>
</table>
</body>
</html>
';

und möchte nun

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">

und

</body>
</html>

entfernen. wie ginge das?

ist es außerdem möglich den ersten teil zu entfernen auch wenn
<title>Untitled Document</title> anderst ist. also z.B.
<title>neuer titel</title> lautet? ...... im grunde müste man ja dann
angeben: löschen von <html> bis <body bgcolor="#FFFFFF" text="#000000">

danke schon einmal :)
 
hmmm

dazu müsste man erst wissen, ob diese datei eine feste zeilenanzahl besitzt (wäre sehr hilfreich),
dann könnte man mit @fopen() das file öffnen, und die betreffenden zeilen auslesen.

besser wäre es jedoch, nur nach dem "mittelteil" zu suchen.
dazu müsstest du den string mit spliti() in ein array aufteilen, und so den mittelteil ausgrenzen,
dazu bräuchtest du feste fixpunkte, die immer gleich bleiben (z.b. <body bgcolor="#FFFFFF" text="#000000"> ).
dann hast du ein array mit 2 elementen (1: anfang bis <body bgcolor="#FFFFFF" text="#000000">; 2: rest des strings).
dieses 2. array-element wieder splitten (an der stelle vor </body> oder </body> als "trennelement",
dann musst du dieses tag mit str_replace())
dann das ganze mit implode() zusammenfügen/ergänzen.

auf http://www.php.net findest du eine tolle (auch deutsche) funktionsreferenz, die weitgehend selbstklärend ist.
man muss halt nur wissen, welche befehle man sucht.


mit der funktionsreferenz kriegst du das bestimmt selbst hin.
du bräuchtest also folgende befehle:
  • spliti
  • implode
  • str_replace
 
Zuletzt bearbeitet:
dazu müsstest du den string mit spliti() in ein array aufteilen
nimm statt spliti() bzw. split() lieber explode()!
Denn split und spliti sind für regular expressions gedacht und wenn du die dür einfache Zeichenkettenverarbeitung benutzt is das verschwendung von ressourcen und kostet nur ladezeit :)
 
...

oder so is eigentlich egal, ich denke mal nicht, dass sein script soooooooooooo große datenmengen bearbeiten soll (weniger als 1kB).

naja musste spliti() bei meinem script nutzen, dass ich geschrieben habe, dachte, man könnte das übertragen ohne weiteres.

nun gut, soll er entscheiden, was er nehmen will.
 
Zurück