2014-05-23 83 views
0

我有這樣一個詞。用javascript分隔單個詞

倫敦赫斯利機場(LHR),我想分開這個詞作爲倫敦赫斯利機場和LHR。

我可以使用這樣的正則表達式嗎?

^[A-Za-z\w\s]{([a-z A-z]\)} 
+0

我不這麼認爲 –

回答

2

爲什麼你不簡單拆分第一個支架?

var dataArray="London Hethrew Airport (LHR)".Split("("); 
dataArray[0]=dataArray[0].trim(); 
dataArray[1]=dataArray[1].replace(")","").trim(); 

尼科

2

您可以在字符串匹配像一個正則表達式:

^([^(]+)\s+\(([A-Z]+)\)$ 

說明:

^      the beginning of the string 
    (      group and capture to \1: 
    [^(]+     any character except: '(' (1 or more 
          times (matching the most amount 
          possible)) 
)      end of \1 
    \s+      whitespace (\n, \r, \t, \f, and " ") (1 or 
          more times (matching the most amount 
          possible)) 
    \(      '(' 
    (      group and capture to \2: 
    [A-Z]+     any character of: 'A' to 'Z' (1 or more 
          times (matching the most amount 
          possible)) 
)      end of \2 
    \)      ')' 
    $      before an optional \n, and the end of the 
          string 
+3

或者說'^(。 +)\ s + \(([AZ] +)\)' –

+0

很好的解釋,但第二個捕獲組不想匹配括號 – phuzi

+0

@phuzi似乎很適合我:http://jsfiddle.net/Sw23W/你能給我更多關於錯誤的信息嗎? –

相關問題