2016-09-03 89 views
0

我的正則表達式無效的正則表達式組

(?<=\s)(?:#sidebar-right-1|#BlogArchive1|#ArchiveList|#BlogArchive1_ArchiveList|#PopularPosts)(?=\s|{)

我有語法錯誤,無效的正則表達式組。問題在哪裏?

我施加這樣的:

規則[R] .selectorText.match(新的RegExp(IDS, '克'))

+2

最後的'{'應該逃脫。 –

+0

是否這樣? '(?<= \ s)(?:#sidebar-right-1 |#BlogArchive1 | #ArchiveList |#BlogArchive1_ArchiveList | #PopularPosts)(?= \ s | \ {)'同樣的錯誤。這是調試器中顯示的字符串。 – user1141649

+0

'{'不是問題。它可以逃脫,但它不一定。正則表達式引擎不會將其視爲特殊字符,前提是它後面沒有整數。 – redneb

回答

1

看來,JavaScript的regexs不支持積極向後斷言(即(?<=\s)部分)。

+0

是的,錯誤開始出現,然後我添加了斷言。 – user1141649