Nodejs String Replace replaceParam(uri, key, value)

Here you can find the source of replaceParam(uri, key, value)

Method Source Code

"use strict";/*  w  ww .  ja v a  2  s  .c o m*/

String.prototype.replaceParam = function (uri, key, value) {
    var re = new RegExp("([?|&])" + key + "=.*?(&|#|$)", "i");
    if (uri.match(re)) {
        return uri.replace(re, '$1' + key + "=" + value + '$2');
    } else {
        var hash =  '';
        if( uri.indexOf('#') !== -1 ){
            hash = uri.replace(/.*#/, '#');
            uri = uri.replace(/#.*/, '');
        }
        var separator = uri.indexOf('?') !== -1 ? "&" : "?";
        return uri + separator + key + "=" + value + hash;
    }
};

Related

  1. replaceList(c,i,s)
    String.prototype.replaceList=function(c,i,s){
      s=s||',';
      var ret=this.split(s);
      ret[i-1]=c;
      return ret.join(s);
    
  2. replaceNbsp()
    var text = 'Write a&nbspfunction&nbspthat&nbspreplaces non breaking&nbsp&nbspwhite-spaces in a&nbsptext with&nbsp.';
    String.prototype.replaceNbsp = function () {
        return this.replace(/&nbsp/g, ' ');
    console.log(text.replaceNbsp());
    
  3. replaceNewAll(str1, str2, ignore)
    String.prototype.replaceNewAll = function(str1, str2, ignore) 
      return this.replace(new RegExp(str1.replace(/([\/\,\!\\\^\$\{\}\[\]\(\)\.\*\+\?\|\<\>\-\&])/g,"\\$&"),(ignore?"gi":"g")),(typeof(str2)=="string")?str2.replace(/\$/g,"$$$$"):str2);
    
  4. replaceNewLineChars( replacement )
    String.prototype.replaceNewLineChars = function( replacement )
      return this.replace( /\n/g, replacement ) ;
    
  5. replaceOccurencesOfString(search,replacement)
    String.prototype.replaceOccurencesOfString = function(search,replacement){
        return this.split(search).join(replacement);
    
  6. replaceSpaces()
    String.prototype.replaceSpaces = function() {
      var length = this.length;
      for(var i = 0; i < length; i++) {
        if(this[i] == ' ') {
          this[i] = "%20"
      return this.toString();
    console.log("This is my Name".replace(/ /ig, '%20'));
    
  7. replaceTuple(tag,repalcement)
    String.prototype.replaceTuple=function(tag,repalcement){
        var _this=this
        for(var i in tag){
          _this=_this.replace(tag[i],repalcement[i])
        return _this
    
  8. replaceUrl()
    String.prototype.replaceUrl = function () {
      'use strict';
        var exp = /(\b(https?|ftp|file):\/\/[\-A-Z0-9+&@#\/%?=~_|!:,.;]*[\-A-Z0-9+&@#\/%=~_|])/ig;
        return this.replace(exp, '<a href="$1" target="_blank">$1</a>');
    };
    
  9. replaceUrl(target)
    String.prototype.replaceUrl = function (target) {
        var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
        if (target) {
            return this.replace(exp, "<a href='$1' target='" + target + "'>$1</a>");
        } else {
            return this.replace(exp, "<a href='$1'>$1</a>");
    };