2016-10-10 53 views
0

我有一個字符串正則表達式替換功能串

Apply the function K(i, x<=>k) for more info. 

我想K(i, x<=>k)轉換爲K_{i}(x<>k),但功能K可以改變內部的爭論,所以我想這是一樣的東西

string.replace(/\K\([.?],[.?]\)/g, 'K_{$1}($2)') 

編輯

對不起,對於K的參數可以是什麼模糊的解釋。我只是認爲正則表達式會更快,如果它沒有指定參數可能是什麼,但只是有一些佔位符。

k的第一參數可以是僅是數字和字母和K的第二個參數可以是數字,字母,空格 - >,< - >,[],<>,&,|和〜,並且永遠不會有超過2個參數,所以模式總是K(某事)。

其餘字符串也不相同。所以字符串也可以像I have a function K(i,a) and two other functions K(3,p&s |r) and K(f, ~g)

+0

和問題是...? – k102

+1

如果您想要一個匹配多個案例的正則表達式,請給出更多示例。 –

+2

*「參數可能會有所不同」* ...這是非常模糊的能夠寫一個正則表達式對 – charlietfl

回答

2

可能是類似的東西(你忘了組args作爲替代值):

string.replace(/K\(([a-zA-Z0-9]+), ?(.+)\)/g, 'K_{$1}($2)')