1
下面的信息應該在兩個陣列劈裂:使用正則表達式來識別的NodeLists
- foo089,酒吧[120-123,215]
期望的結果是兩個陣列具有所有列出的號碼其中[089]和[120-123,215](甚至更好的是120,121,122,123而不是120-123,這是可選的)。
應被解析的其它實例:
- FOO [133,370,390-391],bar120
- foo123
- bar145
- 巴[121303]
- foo123,bar145
這些都應該導致一個兩元數組(第一個是foo,第二個是酒吧),有一個單一的條目(例如, 123或145)或範圍(例如133,370,390-391或121,303)。
我總是需要兩個數組,以便輕鬆確定數字是否屬於foo或bar。
限制
- 富或酒吧不必存在
- 如果兩者同時存在,它們總是有序
- 的數字總是有3位
- 只有foo和沒有其他詞
- foo234,foo425是不允許的。如果富或酒吧有多個號碼,它被列在括號內
我到目前爲止嘗試了以下正則表達式:\d{3}|foo\d{3}|bar\d{3}|\d{3}-\d{3}
。 但是,在PHP preg_grep我沒有得到所需的結果。
看起來不錯!但是,我無法從php中的字符串中提取信息。如何從這個正則表達式中獲得兩個數組? – Frame91
當您匹配時,第一組結果將是* foo *的數字,第二組 - 爲* bar *。又名'foo089,bar [120-123,215]'第一組返回'089',第二組返回'[120-123,215]'。 – ndn
使用匹配組的示例[此處](http://goo.gl/mSEoj3)。 – ndn