VVoVe: Cioè???
Lo puoi fare con qualsiasi editor (notepad, notepad++) senza scomodare le regexp.
daweb ha parlato di RegExp, per cui gli interessa farlo fare a PHP.
Credo proprio che sappia tranquillamente sostituire a mano dei caratteri con altri in un editor di testo!
Comunque..... il metodo descritto da ennekappa tutto sommato lo puoi usare anche senza usare le espressioni regolari.
Codice PHP:
// 1. recuperi la stringa dal post della form o dal DB
$stringa = $_POST['stringa'];
// 2. sostituisci i caratteri di a-capo e asterisco
$stringa = str_replace("\\r\\n*", "[*]", $stringa);
// 3. sostituisci il primo asterisco con un marcatore di lista
$stringa = str_replace("*", "[*]", $stringa);
// 4. aggiungi la chiusura
$stringa = $stringa."";
Ora è da capire se la lista è all'inizio della stringa oppure no.
Se prima del primo asterisco c'è un altro a-capo, allora la stringa inizierebbe con un per cui poi dovresti toglierlo (con substr() oppure con un altri str_replace).
Risolveresti meglio se utilizzassi due caratteri diversi per indicare INIZIO e FINE dell'elemento della lista.
Lì con 2 str_replace risolveresti subito.