Bonjour,

Actuellement, j'ai une liste de référence produit.
Chaque référence produit est constituée des caractères suivants : lettre en majuscule, chiffres, certains caractères spéciaux (".", "/", "-", "*", "_", "(", ")").
Les références produit ne contiennent pas d'espace.

J'ai créé un système de recherche qui affiche la liste de produits associés en fonction de la valeur d'un champs de recherche renseignée par l'utilisateur.
Bien que les références soient renseignées dans la BDD qu'avec des lettre en majuscule, si l'utilisateur entre des minuscules, la recherche fonctionne quand même.
Bien que les références soient renseignées dans la BDD sans contenir d'espaces, si l'utilisateur entre des espaces, ceux-ci sont ignorés dans la recherche.
Le caractère "µ" est remplacé dans la recherche par le caractère "U".

Par exemple, si on a cette BDD :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
AAA-123US
AAA-124US
BBB-124US
BBB-124AS
Si l'utilisateur entre dans le champs de recherche "124 µS", ça affiche :
Voici que le code qui génère le regex :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function getProductRegex(reference){
	//console.log(reference);
	let newReference = reference.replace('µ', 'U') // remplacement µ par U
								.toUpperCase() // conversion en majuscule
				                .split(' ').join(''); // suppression des espaces
	//console.log(newReference);
 
	let re = $.ui.autocomplete.escapeRegex(newReference);
 
	let matcher;
	matcher = new RegExp(re);	
 
	return matcher;
}
La BDD (Base De Données) est stockée sous forme de variable dans mon script javascript :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
var bdd = ["AAA-123US", "AAA-124US", "BBB-124US", "BBB-124AS"];

Maintenant, j'aimerai améliorer le système pour que la recherche fonctionne par mots clefs séparés par des espace.
Par exemple si l'utilisateur entre dans le champs de recherche "µS 124 BBB", que ça affiche :
... que le regex recherche toutes les chaines de caractères qui contiennent TOUS les mots clef entrés (peu importe l'ordre).

Comment faire cela ?

Merci d'avance