2012-08-15 64 views
0

我正在嘗試編寫用於驗證url路徑的正則表達式。我們最初有這樣一種模式:[^#\ ?:] +將抓住所有東西,直到路徑中的第一個?,:或#。REGEX:排除已排除特定字符的模式中的字符串

我們現在還想排除字符串'index.cfm'。

我無法弄清楚如何包括這個。我看了一下lookarounds,但似乎無法解決如何將它與我們已有的模式結合使用。

回答

0

編輯:這是根據您的意見編輯的解決方案。

^.*?(?=[#?:]|index\.cfm|$) 

這是使用您提到的網站的演示:http://regexr.com?31rk9

+0

我用http://www.gskinner.com/RegExr/檢查,並選擇了「ndex.cfm/.....」到第一個問題標記。我想選擇一切,直到第一個? #:或'index.cfm' – Rumpleteaser 2012-08-15 22:42:35

+0

@inKit - 查看新的解決方案。 – 2012-08-15 23:30:48

+0

謝謝。你能解釋一下嗎? – Rumpleteaser 2012-08-15 23:51:35

0

應該爲你工作 ^(?P<url>[^#?:](?!index\.cfm))+