2012-07-01 243 views
0

我如何使用正则表达式来替换这样的事情:
abc-123456789
到不同的东西? ABC总是相同,但123456789更改。正则表达式替换

我知道像/abc-/这样的正则表达式会选择第一部分,但我找不到如何选择数字。

+0

提供样品.. –

+0

代替ABC-到123456789 @MarkLinus – 11684

回答

1
var s = "abc-12345"; 
var replacement = "REPLACEMENT"; 
var t = s.replace(/abc-[0-9]+/, replacement); 
1
mystring.replace("/abc/-[0-9]{9}", "Something else"); 
0
str = str.replace(/(abc-)([0-9]+)/gi, function(str, group1, group2) { 
    return group1 + someFunction(group2) 
} 

group1就是为int的第一括号; group2 - 第二个是什么。该函数获取字符串和这两个组作为其参数。您可以重写group2并返回新的字符串,并更改此部分。

+0

更一般,但太复杂了。 – Blaisorblade

2

使用此: “不同的东西”

str.replace(/abc-\d+/gi,"something");