2012-03-25 76 views
1
WT01-B01-2 WT01-B01-6 WT01-B01-1 
WT01-B01-3 WT01-B01-6 WT01-B01-1 
WT01-B01-4 WT01-B01-6 WT01-B01-1 
WT01-B01-11 WT01-B01-9 
WT01-B01-12 WT01-B01-8 
WT01-B01-13 WT01-B01-8 
WT01-B01-14 WT01-B01-8 
WT01-B01-17 WT01-B01-16 WT01-B01-19 WT01-B01-18 WT01-B01-20 WT01-B01-21 
WT01-B01-18 WT01-B01-16 WT01-B01-19 WT01-B01-20 WT01-B01-21 WT01-B01-17 
WT01-B01-19 WT01-B01-16 WT01-B01-18 WT01-B01-20 WT01-B01-21 WT01-B01-17 
WT01-B01-20 WT01-B01-16 WT01-B01-19 WT01-B01-18 WT01-B01-21 WT01-B01-17 
WT01-B01-21 WT01-B01-19 WT01-B01-18 WT01-B01-20 WT01-B01-17 

我需要做的是在PHP中,我需要在數組中存儲單詞。典型的單詞看起來像WT01-B01-2。我想要除了每行上的第一個單詞之外的所有單詞。我嘗試了很多,但無法做到。我對編程和正則表達式很陌生。讓我知道我是否缺少任何東西。由於正則表達式除了第一行之外的每行上的匹配字

+0

是一個字符串還是? – 2012-03-25 01:55:37

+0

假設這是一個字符串,爆炸在新的一行,然後循環和爆炸的空間,然後內爆廢棄數組0 – 2012-03-25 01:57:03

回答

0

我會用(?<!^|[\w\d-\n\r])([\w\d-]+)(?!=[\w\d-])

1

由於您的要求是,它不應該是上線的第一個字母,你可以簡單地做這個:

preg_match_all("/ WT([0-9]+)-B([0-9]+)-[0-9]+/", $input, $matches); 

的空間要求,它是由一個字之前,絕不會第一句話就行了。匹配數組將包含每個單詞和數字。

+0

工作!非常感謝。正如你所描述的那樣,它跳過了第一個單詞。這真的很快。再次感謝 – user1188821 2012-03-25 02:01:38