Thread String zwischen 2 Zeichen (#) auslesen (12 answers)
Opened by Gast at 2004-12-17 15:34

Gast Gast
 2004-12-17 15:34
#3803 #3803
Hallo zusammen,

hoffe mir kann jemand helfen. Ich hab ein Array @details was ich mit Daten aus einer Tabelle fülle. Hierbei gehts mir um den Text den ein User eingeben kann. Den Text spreche ich dann mit $details[4] an.

Der Text soll zur Ausgabe nun in HTML formatiert werden. Bei der Texteingabe soll der User jetzt aber die Möglichkeit haben mit einem beliebigen Zeichen (# verwende ich jetz mal) eine Aufzählung einzuleiten und diese durch selbiges Zeichen wieder zu beenden.

Eben einfach alles was zwischen #text text text# steht soll die Listenformatierung bekommen.

EINGABE:

Normaler Text! #Aufzählung1# #Aufzählung2# Normaler Text usw. #Aufzählung3#

---

AUSGABE: (_ = soll einrücken symbolisieren)

Normaler Text!
_Aufzählung1
_Aufzählung2
Normaler Text usw.
_Aufzählung3

Quellcode Auszug:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
while (@details = $sth->fetchrow_array ())
{
# Zeilenumbruch einfuegen
$details[4]=~ s/\n/<br>/g;

# Text nach Aufzaehlungszeichen Splitten
$details[4] =~ s/$zeichen([^$zeichen]+)/<ul><li>$1<\/li><\/ul>/g;

print<<ENDE;
<tr>
<td>$details[2]&nbsp;$details[3]</td>
</tr>
<tr>
<td>$details[4]</td>
</tr>
ENDE
}


In $zeichen steht "#"

Das ganze klappt insofern dass ich die Aufzählung einleiten kann, aber sobald die nächste Raute # kommt hab ich wieder ne Aufzählung. Ich kann die Aufzählung nicht abschließen und normal weiter schreiben.

Bin um jede Hilfe dankbar!

Gruß, CrYo

View full thread String zwischen 2 Zeichen (#) auslesen