0
這個正則表達式,/\[([^]]+)\]\((((?:https?|ftp):\/\/)?.*?)\)/gm
,在PCRE和Python中正常工作,但在javascript中沒有那麼多。PCRE和Python的正則表達式不能在javascript中工作
爲什麼不呢?我如何解決它?
這個正則表達式,/\[([^]]+)\]\((((?:https?|ftp):\/\/)?.*?)\)/gm
,在PCRE和Python中正常工作,但在javascript中沒有那麼多。PCRE和Python的正則表達式不能在javascript中工作
爲什麼不呢?我如何解決它?
逃離]
內[...]
將使其在Javascript工作:
\[([^\]]+)\]\((((?:https?|ftp):\/\/)?.*?)\)
^^
有趣的,是的Javascript只是比較挑剔,還是有原因的設計師選擇了逃跑的需要? – Justin808
@ Justin808,我不知道背後的原因。一些正則表達式引擎足夠聰明來處理這個問題,而另一些則不是。再舉一個例子:一些正則表達式抱怨'{abc}',其他人不會抱怨,並且直接匹配'{abc}'。 – falsetru