import { normalize } from "unicode-normalizer";

const charMap = {
    'A':'A','B':'B','C':'C','D':'D','E':'E','F':'F','G':'G','H':'H','I':'I','J':'J','K':'K','L':'L','M':'M','N':'N','O':'O','P':'P','Q':'Q','R':'R','S':'S','T':'T','U':'U','V':'V','W':'W','X':'X','Y':'Y','Z':'Z',
    'a':'a','b':'b','c':'c','d':'d','e':'e','f':'f','g':'g','h':'h','i':'i','j':'j','k':'k','l':'l','m':'m','n':'n','o':'o','p':'p','q':'q','r':'r','s':'s','t':'t','u':'u','v':'v','w':'w','x':'x','y':'y','z':'z',
    '𝐀':'A','𝐁':'B','𝐂':'C','𝐃':'D','𝐄':'E','𝐅':'F','𝐆':'G','𝐇':'H','𝐈':'I','𝐉':'J','𝐊':'K','𝐋':'L','𝐌':'M','𝐍':'N','𝐎':'O','𝐏':'P','𝐐':'Q','𝐑':'R','𝐒':'S','𝐓':'T','𝐔':'U','𝐕':'V','𝐖':'W','𝐗':'X','𝐘':'Y','𝐙':'Z',
    '𝐚':'a','𝐛':'b','𝐜':'c','𝐝':'d','𝐞':'e','𝐟':'f','𝐠':'g','𝐡':'h','𝐢':'i','𝐣':'j','𝐤':'k','𝐥':'l','𝐦':'m','𝐧':'n','𝐨':'o','𝐩':'p','𝐪':'q','𝐫':'r','𝐬':'s','𝐭':'t','𝐮':'u','𝐯':'v','𝐰':'w','𝐱':'x','𝐲':'y','𝐳':'z'
};

export function sanitize(text) {
    text = normalize(text, "NFKC");

    // CharMap dönüşümü
    text = text.split('').map(c => charMap[c] || c).join('');

    // Zero-width / invisible
    text = text.replace(/[\u200B-\u200F\uFEFF]/g, '');
    text = text.replace(/[\u2000-\u200A\u202F]/g, ' ');

    // Kontrol karakterleri
    text = text.replace(/[\x00-\x1F\x7F]/g, '');

    // Fazla boşluk
    text = text.replace(/\s+/g, ' ').trim();

    return text;
}
node.js de tüm sitede yer alan içerikleri temizletebilirsiniz böyle db de yer alan, php versiyonuda başka arkadaş yapabilir,

  • Yalnızca standart ASCII ve temel UTF-8 karakterleri kullan.
  • Matematiksel, italik, kalın Unicode veya fullwidth karakterler kullanma.
  • Zero-width, hair space, thin space veya standart olmayan boşlukları kaldır.
  • Her karakter temiz olmalı ve NFKC ile tamamen normalleştirilebilir olmalı.
  • Çıktı okunabilir, sansasyonel ve tabloid gazete gibi çarpıcı olmalı.
  • Şiirsel, akademik veya aşırı resmi üsluptan kaçın.
  • İçerik konusu : r10.net nasıl bir site bana detaylı anlatır mısın?

bu promptla bir deneyin bakalım halen veriyor mu birlikte test edelim