JavaScript basic replace two chars in same string

前端 未结 3 1488
说谎
说谎 2021-01-15 07:35

I have:

var foo = \'(bar)\'
foo.replace(\'(\', \'\').replace(\')\', \'\')

So, I get bar without parentheses, is there a better

相关标签:
3条回答
  • 2021-01-15 07:50

    If it is always the first and last characters you are trying to get rid of, you could use the slice method: http://www.w3schools.com/jsref/jsref_slice_string.asp

    ​var foo = '(bar)';
    alert(foo.slice(​​​​​​​​1, 4));
    //Or
    alert(foo.slice(1, foo.length - 1));​
    
    0 讨论(0)
  • 2021-01-15 08:02

    You could use:

    foo = foo.replace(/[()]/g, '');
    

    That involves a simple regular expression that matches all instances of either open- or close-parentheses. Note that you have to include that assignment, as ".replace()" does not modify the string; it returns the modified string.

    0 讨论(0)
  • 2021-01-15 08:04

    You could use a regex capturing everything inside parentheses in a capturing group as per Javascrip Regex e.g.

    var foo = "(bar)";
    var replacedStr = foo.replace(/\((.*)\)/g, "$1");
    

    or replacing just the parentheses with empty string e.g.

    var foo = "(bar)";
    var replacedStr = foo.replace(/[()]/g, ""); 
    
    0 讨论(0)
提交回复
热议问题