2011-09-05 55 views
1

我想問您如何修改正則表達式:正則表達式修改 - 符合optionaly破折號(PHP)

"/\b([A-Z]{2,}[0-9][0-9A-Z-\/]*)/is" 

因爲目前它只能滿足它是否會有不「 - 」。我想實現的是,除了能匹配這樣的事情,即

TGW-1234  

所以至少2個字母后跟(可選),破折號,然後(必需的)數字。

非常感謝。

/馬辛

回答

3

使用字母和數字之間的-??意味着可選

"/\b([A-Z]{2,}-?[0-9][0-9A-Z-\/]*)/is" 

它被放在被允許出現在表達該點的字符後,但誰的存在實際上並不需要仍然被認爲是成功的匹配。

1
"/\b([A-Z]{2,}-?[0-9][0-9A-Z-\/]*)/is" 
1
"/\b([A-Z]{2,}-?[0-9][0-9A-Z-\/]*)/is" 
--------------^^ optional dash