Quando sviluppiamo un'applicazione web dove l'utente può inserire dei commenti, spesso abbiamo l'esigenza di moderare i commenti evitando l'inserimento di parole offensive o blasfeme o altro ancora. Ovviamente quest'operazione deve essere fatta lato server, ma è comunque meglio evitare già dal client che l'utente possa inserire certe parole.
Per verificare che l'utente non inserisca certe parole possiamo usare il metodo Intersect della libreria JSLINQ come nel seguente esempio:
var wordsToFind = ["parola1", "parola2", "parola3"]; var words = textToAnalyze.split(" "); var count = JSLINQ(words) .Intersect(wordsToFind, function(item, index, item2, index2){ return item.toLowerCase() == item2.toLowerCase(); }) .Count();
Il metodo Intersect accetta in input l'elemento corrente della lista di parole da analizzare e il suo indice, l'elemento corrente della lista di parole da cercare e il suo indice e se le parole corrispondono le mette in un array temporaneo che viene restituito quando il metodo termina la sua esecuzione. A questo punto basta usare il metodo Count per verificare che ci sia nel testo da analizzare almeno una parola di quelle ricercate.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire liste di tipi semplici con Entity Framework Core
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Reactive form tipizzati con modellazione del FormBuilder in Angular
Elencare le container images installate in un cluster di Kubernetes
Controllare gli accessi IP alle app con Azure Container Apps
Miglioramenti agli screen reader e al contrasto in Angular
Usare le variabili per personalizzare gli stili CSS
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Ottenere il contenuto di una cartella FTP con la libreria FluentFTP
Effettuare il pull di git LFS in un workflow di GitHub
Installare le Web App site extension tramite una pipeline di Azure DevOps
Le novità di Angular: i miglioramenti alla CLI