我試圖用正則表達式在|||
或|,|
分隔符上分割格式爲Bananas|,|Bananas|||Bananas|Oranges|,|Bananas|||Bananas|Oranges|||Bananas|Oranges|Green Apples|,|Bananas|||Bananas|Oranges|||Bananas|Oranges|Red Apples|,|Bananas|||Bananas|Oranges|||Bananas|Oranges|Pears
的字符串。我使用的是[a-zA-Z |]+\|[,|\0]\|
,但我遇到了一個小問題:三角管分隔符被[a-zA-Z |]
字符類捕獲。在正則表達式中只接受一行中的單個字符
有沒有辦法將[a-zA-Z |]
字符類更改爲只接受一行中的一個管道字符,同時允許任何數量的其他字符? (也就是說,它應該接受accessories|batteries
但不accessories||batteries
。)
更多的例子:從原始字符串,正則表達式應該接受Bananas|Oranges|,|
或Bananas|||
,不Bananas|||Bananas|Oranges|,|
,與|[,|]|
之前的任何數量的單管分隔的名字。
這是行不通的,因爲這將期待的第一個字符是一個|。但是,它應該被允許在搜索文本的任何地方。 – Kissaki 2011-04-04 22:40:06
我已經用輸入字符串中更具體的接受/拒絕示例更新了問題。 – CajunLuke 2011-04-04 22:46:59
我覺得你的例子更清楚一點 - '([a-zA-Z] + \ |)+(,| \ |)\ |' – 2011-04-04 22:59:04