我试图修改一个以#开头的大字符串中的某些数字。
例如,我有一个字符串:
var text = "#41 = AXIS2_PLACEMENT_3D ( 'NONE', #3200, #1543, #6232 ) ;
#42 = EDGE_CURVE ( 'NONE', #180, #933, #1234, .T. ) ;"
然后,我想添加一个固定的数字,以每一个数字后的“#”,例如,添加100,以获得这个:
text = "#141 = AXIS2_PLACEMENT_3D ( 'NONE', #3300, #1643, #6332 ) ;
#142 = EDGE_CURVE ( 'NONE', #280, #1033, #1334, .T. ) ;"
我已经用regex做到了这一步:
const offset = 100;
const matchingExpression = /\#(\d+)/ig;
text = text.replaceAll(matchingExpression, "#" + //old value + offset);
我现在可以替换所有以“#"开头的数字。但是我如何得到旧的值呢?
我不是很熟悉正则表达式,不知道这种方法是否可行。希望你能帮助我。
谢谢
2条答案
按热度按时间qvsjd97n1#
可以像这样使用
String.replace
:8i9zcol22#
使用String.prototype.replace方法的第二个参数(函数回调):