Subversion Repositories Applications.dictionnaire

Rev

Rev 16 | Rev 19 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 16 Rev 17
Line 176... Line 176...
176
		}
176
		}
177
		$(set).remplacerDefinitions(motsAyantDefinition);
177
		$(set).remplacerDefinitions(motsAyantDefinition);
178
	}
178
	}
179
}
179
}
Line -... Line 180...
-
 
180
 
-
 
181
// update definitions set cle = trim(cle);
-
 
182
// select cle from definitions where cle like '%é' COLLATE 'utf8_bin';
180
 
183
// select cle from definitions where cle like '% ou %' COLLATE 'utf8_bin';
181
function batirRegexp(mots) {
184
function batirRegexp(mots) {
182
	var restr = '';
185
	var restr = '';
183
	$.each(mots, function(index, mot) {
186
	$.each(mots, function(index, mot) {
Line -... Line 187...
-
 
187
		if(restr != '') restr += '|';
-
 
188
 
-
 
189
		if(mot == 'ph') {
184
		if(restr != '') restr += '|';
190
			restr += 'ph[^.]';
185
 
191
		}
186
		if(mot.length < 3) {
192
		else if(mot.length < 3) {
-
 
193
			restr += mot;
-
 
194
		}
-
 
195
		// confluent => confluentes
-
 
196
		else if(mot.substr(-2) == 'ts') {
-
 
197
			restr += mot.slice(0, -1) + "e?s?";
-
 
198
		}
-
 
199
		else if(mot.substr(-3) == 'ore') {
187
			restr += mot;
200
			restr += mot + "s?";
188
		}
201
		}
189
		// gestion masculin/féminin en "eux/euse"
202
		// gestion masculin/féminin en "eux/euse"
190
		else if(mot.substr(-1) == 'x') {
203
		else if(mot.substr(-1) == 'x') {
191
			restr += mot.slice(0, -1) + "(?:x|se|ses)";
204
			restr += mot.slice(0, -1) + "(?:x|se|ses)";
192
		}
205
		}
193
		else if(mot.substr(-4) == 'euse') { // TODO: fix DB
206
		else if(mot.substr(-4) == 'euse') { // TODO: fix DB
-
 
207
			restr += mot.slice(0, -2) + "(?:x|se|ses)";
-
 
208
		}
-
 
209
		else if(mot.substr(-2) == 'ée') {
-
 
210
			restr += mot.slice(0, -1) + "e?s?";
-
 
211
		}
-
 
212
		else if(mot.substr(-1) == 'é') {
-
 
213
			restr += mot + "e?s?";
-
 
214
		}
-
 
215
		// verbe vs nom
-
 
216
		else if(mot.substr(-4) == 'orme') {
-
 
217
			restr += mot + "s?";
-
 
218
		}
-
 
219
		// verbe 3è p.pluriel en DB: ne devraient pas exister
-
 
220
		// mais rampant => rampante
-
 
221
		else if(mot.substr(-2) == 'nt') {
194
			restr += mot.slice(0, -2) + "(?:x|se|ses)";
222
			restr += mot + "e?s?";
-
 
223
		}
-
 
224
		else {
-
 
225
			// moins de faux positifs:
195
		}
226
			// restr += mot + "(?:[ées]){0,2}";
-
 
227
			// autrement:
196
		else
228
			restr += mot + "\\w{0,2}";
Line 197... Line 229...
197
			restr += mot + "\\w{0,2}";
229
		}
198
	});
230
	});
199
 
231