Sto cercando il modo più rapido per mettere in minuscolo tutte le lettere che non fanno parte di AND in una frase. Voglio lasciare AND
nel suo caso originale, se fosse and
o AND
non dovrebbe cambiare.Tutte le parole minuscole tranne AND E
Ad esempio, barack AND obama
deve verificare uguale a Barack AND Obama
ma non a barack and obama
. (Notare la differenza caso e)
Ecco un approccio, ma mi chiedo se c'è un modo più breve, o meglio un modo che evita iteratori:
var str = 'Barack AND Obama'; // should be barack AND obama after
str = str.split(/\s+/g).map(function (s) {
return s.toLowerCase() != 'and' ? s.toLowerCase() : s;
}).join(' ');
Buon approccio! Mi interessano anche gli altri prima di scegliere il meglio –
Non sapevo che 'String.replace' accettasse una funzione, bello. –
Ho visto che faceva pseudo look-behinds. Questo è probabilmente l'approccio più elegante al mio problema. –