我只需要行(1)和(3)通過正則表達式和javascript通過關鍵字「a」「b」和「c」。超過2個關鍵字用正則表達式搜索
文本是:
A + B + C(1)
測試+ A +試驗(2)
C + B + A(3)
測試+ b + test(4)
我發現「(?=。* a)。* b」。但是如何處理像這個例子那樣的兩個以上的關鍵字呢?
我只需要行(1)和(3)通過正則表達式和javascript通過關鍵字「a」「b」和「c」。超過2個關鍵字用正則表達式搜索
文本是:
A + B + C(1)
測試+ A +試驗(2)
C + B + A(3)
測試+ b + test(4)
我發現「(?=。* a)。* b」。但是如何處理像這個例子那樣的兩個以上的關鍵字呢?
您可以使用積極向前斷言如下面的正則表達式匹配所需的文本:
/^(?=.*a)(?=.*b)(?=.*c)/
更多先行和回顧後細節可以在這裏找到:Regex lookahead, lookbehind and atomic groups
JavaScript演示
var a = "a+b+c";
var b = "test+a+test";
var c = "c+b+a";
var d = "test+b+test";
var pattern = /^(?=.*a)(?=.*b)(?=.*c)/;
console.log(a + " ----- " + pattern.test(a));
console.log(b + " ----- " + pattern.test(b));
console.log(c + " ----- " + pattern.test(c));
console.log(d + " ----- " + pattern.test(d));
我想你已經添加不正確撥弄鏈接。此外它更好地使用堆棧片段,因爲它使你獨立回答。 – Rajesh
@Rajesh哎呀感謝提到。 –
怎麼樣'VAR一個= string.split( 「+」);'然後訪問'A [0]'和[2] – Rajesh