2013-02-03 152 views
0

我已經放在一起搜索功能,通過大量的div查找匹配字符串的信息在其數據屬性,我用正則表達式來做到這一點。正則表達式匹配字符串的一部分

這是我正在使用哪個正則表達式正在工作。

var regExPattern = "gi"; 
var regEx = new RegExp(filter, regExPattern); 
// filter is the text that the user searches. 

我需要改變模式,以便它可以匹配部分字符串,例如它可以匹配'hello world'中的'world'。但目前我只能輸入完整字符串'hello world'

我讀了關於正則表達式的Mozilla頁面,我認爲我需要使用的標誌是\S。所以我將regExPattern更改爲"gi/\S\w*/" ...但這不起作用。我想我對如何使用這些標誌確實是錯誤的。請有人指出我的方向正確。

+2

你有你的條件都混在一起。 ''gi''不是一個正則表達式模式,'\ S'不是一個標誌。這個''gi/\ S \ w * /「'似乎是試圖將regex標誌與正則表達式語法混合使用。我認爲也許你應該從頂層開始,首先了解更多的基礎知識。 –

+0

@thesystem我對正則表達式很陌生,所以我認爲我所做的都是錯誤的。如何使用標誌和正則表達式語法的混合? (如果我甚至需要的是)。 – dev

+3

你首先做一個正則表達式。這是模式匹配部分。標誌只是修改正則表達式的行爲的設置。例如,'i'標誌使整個正則表達式模式不區分大小寫,'g'標誌使正則表達式搜索整個字符串,而不是在第一次匹配時停止。 –

回答

0

事實證明,這不是RegEx模式或標誌的問題,因爲它們按照我希望的方式工作,無論如何都是通過搜索整個字符串,但這是我的搜索功能的問題。 Please see this later question I posted