繁体   English   中英

在JavaScript中删除两个indexOf之间的字符串部分

[英]Remove part of string between two indexOf in javascript

我如何从两个indexOf之间的字符串中删除

我有这个jsFiddle

这是我的代码:

 var x = "M 178.6491699876038 23.419570090792845 C 183.6491699876038 
23.419570090792845 186.47776067057902 30.902823043098138 190.3670728596699 
     41.19229585251793 L 194.25638504876076 51.48176866193772" ; 
  var c = x.indexOf('C') ; 
  var L = x.indexOf('L') ;
  var final = x.slice (c,L) ;
  console.log(final) ;

此代码将导致返回字符串的已删除部分

问题删除CL之间的部分后如何返回原始字符串

var c = x.indexOf('C') ; 
var L = x.indexOf('L') ;

var remaining = x.slice(0, c) + x.slice(L);

小提琴:

http://jsfiddle.net/ePbCP/

只需将原始字符串的该部分替换为空:

var x = "M 178.6491699876038 23.419570090792845 C 183.6491699876038 23.419570090792845 186.47776067057902 30.902823043098138 190.3670728596699 41.19229585251793 L 194.25638504876076 51.48176866193772" ; 
var c = x.indexOf('C') ; 
var L = x.indexOf('L') ;

var final = x.slice (c,L) ;
console.log(x.replace(final, ''));

小提琴

您可以为此使用2 substring

var c = x.indexOf('C') ; 
var L = x.indexOf('L') ;

var y = x.substring(0, c) + x.substring(L);

尝试:

var x = "M 178.6491699876038 23.419570090792845 C 183.6491699876038 23.419570090792845 186.47776067057902 30.902823043098138 190.3670728596699 41.19229585251793 L 194.25638504876076 51.48176866193772";
var c = x.indexOf('C');
var L = x.indexOf('L');
var final = x.substring(0, c) + x.substring(L, x.length);
console.log(final);

您可以将最后一个字符串替换为空字符串以获取其余部分。

var remaining = x.replace(final,'');

现场演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM