2010-05-03 85 views
1

如何在preg_match中添加字符-preg_match問題

preg_match('#^(\w+/){0,2}\w+\.\w+$#', $string)

但它必須是字符串中的最後.之前。我已經嘗試過我所知道的一切。我知道-需要逃脫。於是,我就逃跑它在不同的地方,但它不工作:(

argggg

+0

破折號只在字符類中特殊,例如'[az]' – Joe 2010-05-03 19:01:08

回答

3

你knowlegde的破折號需要轉義是不完整的。

preg_match('#^(\w+/){0,2}\w+-\.\w+$#', $string) 

它需要進行轉義character classes,因爲它有一個特殊的含義,但它在正則表達式的其餘部分沒有特殊含義,所以它不需要在這裏轉義。

+0

對不起,這根本不起作用。 – SoLoGHoST 2010-05-03 19:01:28

+0

那麼你的問題是不完整的。發佈您嘗試匹配的字符串。 – Tomalak 2010-05-03 19:01:53

+0

我很抱歉,我認爲它正在工作,檢查此問題的最佳方法是什麼?如果返回== 1?這會起作用嗎?這會返回多少匹配,還是會返回1以用於任何和所有匹配? – SoLoGHoST 2010-05-03 19:06:51