Domanda

Può capitare che cercando di rimpiazzare un carattere speciale in una stringa questo non venga modificato come ci si aspetta.

Ad esempio se cerchi di rimpiazzare il carattere hashtag come nel nostro caso questo non venga modificato.


$stringa = "Modificare il codice C#";
echo preg_replace(preg_replace("/(c)[\s]*(#)/i", "C-sharp", $stringa);
// Modificare il codice C#

È stato utile?

Soluzione

In questo caso semplicemente il problema è che il carattere cercato formalmente è diverso, è un carattere speciale "maiuscolo".

Il modo per risolvere il problema è il seguente:


$stringa = "Modificare il codice C#";
echo preg_replace("/(c)[\s]*(#)/i", "C-sharp", preg_replace("/(c)[\s]*(#)/i", "C-sharp", $stringa);
//Modificare il codice C-sharp

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top