我使用javascript。 我需要匹配的會是這樣的(如果我有真正的詞語來形容它)的字符串:正則表達式只匹配前後無字符的字符串
(NOTHING前)+(只有一個字,不可選)+(「.couleur」(它(只有一個可選空間)+(「=」(固定單詞))+(只有一個可選空間)+(單詞「vert」或「violet」或「orange」)+ (後NOTHING)
我嘗試這樣做:
var re1='((?:[a-z][a-z]+))';
var re2='(\\.)';
var re3='(couleur)';
var re4='(\\s?)';
var re5='(=)';
var re6='(\\s?)';
var re7='((?:[a-z][a-z]+))';
var p = new RegExp(re1+re2+re3+re4+re5+re6+re7,["i"]);
但我沒有找到如何避免匹配時,也有一些是和之前的東西我的字符串後,和我不知道如何檢查最後一部分是否「垂直」「橙色」或「紫色」以匹配它。
編輯:這裏有一些字符串,將匹配:
"test.couleur = vert"
"te.couleur = violet"
這裏有一些字符串將不匹配:
" test.couleur = vert" (space before)
" e tdk.couleur = vert" (something before the first word)
"tdl.couleur = vert e" (something after the last word)
"tdk.couleur = gris" (gris is not "vert" or "orange" or "violet")
非常感謝您的幫助!
變化're7'到'VAR RE7 ='(? :VERT |橙色|紫色)「; '然後添加錨點,比如'var p = new RegExp(「^」+ re1 + re2 + re3 + re4 + re5 + re6 + re7 +「$」,「i」);' –
成功了, ! @AvinashRaj –