2016-02-27 106 views
1

我正在處理一個任務來解析一個黃瓜要素字符串,我需要將字符串拆分爲5,如下所示。使用正則表達式將字符串拆分爲多個字符串

String data = "calls 'create' using 'POST' on some uri"; 

我的基本分割功能的多個次(無任何正則表達式,這是非常繁瑣的)執行以產生所述數據轉換成如下。

String dataArray[] = {"calls '","create","' using '","POST", "' on some uri"}; 

我想獲得的dataArray[1]dataArray[3]名稱。有沒有辦法使用正則表達式和分割或其他一些簡單的方法來生成上面的dataArray

+1

那麼爲什麼''調用'「'是一個令牌,但'」創建'「不是? – anubhava

回答

1

只需使用呢?

String dataArray[] = data.split("'"); 
-> 
[calls , create, using , POST, on some uri] 
1

這裏是一個使用正則表達式的解決方案:

public static void main (String[] args) { 
    String data = "calls 'create' using 'POST' on some uri"; 
    String[] dataArray = new String[2]; 
    Matcher matcher = Pattern.compile("'[a-zA-Z]+'").matcher(data); 
    int counter = 0; 
    while (matcher.find()) { 
    String result = matcher.group(0); 
    dataArray[counter++] = result.substring(1, result.length() - 1); 
    } 
} 

輸出:

dataArray[0] --> create 
dataArray[1] --> POST 
相關問題