如何替换javascript字符串中的前三个连字符



更改

12-16-23一些单词-新

12/16/23/一些单词现在

谢谢!!非常感谢你的帮助。

如果前三个短划线之间的字符总是数字,可以这样做:

variable = variable.replace(/^(d+)-(d+)-(d+)-/, "$1/$2/$3/");

如果它们可以是任意字符,那么你可以这样做:

variable = variable.replace(/^([^-]+)-([^-]+)-([^-]+)-/, "$1/$2/$3/");

工作演示:http://jsfiddle.net/jfriend00/YySFh/

foo = foo.replace(/^(.*?)-(.*?)-(.*?)-(.*)$/, "$1/$2/$3/$4");

JSFiddle。

这应该可以做到:

'12-16-23-some-words-now'.replace(/^(d+)-(d+)-(d+)-/g, '$1/$2/$3/');

前三个总是数字吗?

查找:

^([^-]*)-([^-]*)-([^-]*)-(.*)

替换:

$1/$2/$3/$4

这个确切的结构可以这样固定:

var string = "12-16-23-some-words-now";
var hyphensFormatted = string.substr(0, 9).replace(/-/g, "/");
var formattedString = hyphensFormatted + string.substr(9, string.length);
console.log(formattedString);

最新更新