2013-08-16 96 views
0

我有以下字符串<=10 & <20,我想分割這個字符串,因此它給出了以下結果('<=' '10' '<' '20') &是無關緊要的,因爲我在不同的領域處理我的代碼!分割一個字符串,但保留我分裂的元素

這是溶液I具有當它是正數

.match(/(([<=>]+)|(\d+))/ig) - 結果:來自此需要'<=' '10' '<' '20'

但字符串也可具有負數< = -10 & < -20,結果將是('<=' '-10' '<' '-20')。那麼,如何更新上面的.match來處理這兩種情況。

回答

2

只需負添加到正則表達式:

"<=-10 & <-20".match(/(([<=>]+)|(-*\d+))/ig) 

給出結果

["<=", "-10", "<", "-20"] 
+0

這將處理正數,因爲我需要一個正則表達式來處理這兩個scenrios –

+0

是的。嘗試一下。注意巴勃羅的答案是使用?而不是*可能是更好的答案,儘管它們都以相同的結果解析字符串。 – fred02138

3

數字前加一個-?,使之選:/([<=>]+|-?\d+)/ig(除去unnecesary括號)

相關問題