2013-05-13 43 views
1

這裏是一個正則表達式我使用來檢測文本中的所有表情:正則表達式只檢測第一個表情符號?

/[\:][0-9A-Za-z'\&\-\.\/()=:;]/.exec(" Hi there:d :p") 

但它只能檢測到第一個(:d)
問題出在哪裏?
在此先感謝!

+0

用'/ g'結束表達式以匹配多個表達式。 – Stefan 2013-05-13 09:28:30

回答

3

我建議你使用.match()並與全球g標誌的正則表達式:

"Hi there:d :p".match(/[\:][0-9A-Za-z'\&\-\.\/()=:;]/g); 
+0

謝謝。這真的是我想要的。 – 2013-05-13 09:31:39

2

使用全球g標誌

[\:][0-9A-Za-z'\&\-\.\/()=:;]/g 

沒有這個修改,正則表達式將停在第一次出現(如果有)

+1

它不會真的有幫助,因爲'exec'應該被迭代使用。 – VisioN 2013-05-13 09:29:09

+1

沒錯,沒注意到exec,只看到了模式:D – fcalderan 2013-05-13 09:34:11

相關問題