2012-03-05 15 views
0

我想從這個字符串取值的字符串的部分最簡單的方法:什麼是選擇基於在javascript模板

-webkit-gradient(linear, right top, left top, color-stop(0, #FF7417), color-stop(1, #82A8FF)) 

,並將其轉換爲其他格式(-moz,-o - , - webkit-linear等)。目前我正在通過分割字符串(使用'(',','等),然後重新安排到新的格式。這是否有一個簡單的方法來做到這一點?

注意:我不「噸需要一種方法來各種梯度格式之間進行轉換。我只需要一種通用的方式來接基於預定義的模板的字符串的所需要的部分。

+2

使用正則表達式 – Raintree 2012-03-05 18:45:02

回答

1

喲應該捕獲每組使用正則表達式,例如 /color-stop\(0,.+?\)/應你得到第一個顏色停止部分,然後你只需要創建一個新的字符串,結果如下:

"-webkit-gradient" + color + linear + righttop + etc; 

Simple tutorial about regexes and javascript

+0

您可以詳細解釋一下您使用的正則表達式嗎?也可以匹配所有的colorstops並在最後給我一個數組嗎? – ivymike 2012-03-05 18:52:43

+0

這並不容易,你需要爲每個你想捕捉的東西製作一個正則表達式,它們不是神奇的,我會爲此尋找一個嘖嘖。 – AlfredoVR 2012-03-05 19:00:22

+1

我已經添加了一個教程的鏈接,你還應該搜索正則表達式工具,如正則表達式教練窗口,它是免費的,學習更容易。 – AlfredoVR 2012-03-05 19:02:05