2011-04-19 51 views
3

一個愚蠢的問題,我不知道下面的javafx正則表達式語法有什麼問題。 Netbeans的抱怨在整個這個表達式字符串的非法轉義字符,正則表達式語法javafx

var pattern:String = "(\/S*)(ftp|http|https):\/\/(\w+:\{0,1\}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?"; 

任何幫助是極大的讚賞。謝謝一堆。

乾杯, 阿比

回答

0

我想你的問題是在這裏:

(\/S*)(ftp|http|https):\/\/(\w+:\{0,1\}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))? 
           ------- 

我假設你想要說的是可以有一個「:」還是不行。爲此你不需要逃避方括號,即只有:{0,1},但是這僅僅是:?

所以我假設你的意思是:

(\/S*)(ftp|http|https):\/\/(\w+:?\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))? 
3

嘗試使用\

VAR模式這雙\\ :String =「(\\/S *)(ftp | http | https):\\/\\ /(\\ w +:\ {0,1 \} \\ w * @)?(\\ S +)( :[0-9] +)?(\\/| \\ /([\\ w#!:。?+ = &%@!\ - \\ /]))?「;

+0

感謝它幫助我 – Ricky 2011-09-12 09:11:37