zoukankan      html  css  js  c++  java
  • 关于js字符串替换的一道笔试题目

    题目描述

    请写出一个字符串转换函数,接受两个参数:
    1.字符串 形如{a}ab-{b}cde{c}fff{d}{};
    2.对象,形如{'a':'1','b':'2','d':'4'}
    根据,对象的属性进行规则替换,输出结果为1ab-2cdefff4;

    根据样例大概可以猜到替换规则:对于字符串中被大括号"{}"包围的字符串,如果在对象的属性中能找到对应的规则,则按照规则进行替换;如果找不到,就替换为空串。

    思路解析

    整个过程可以大致分成以下步骤:
    1.查找需要出需要替换部分(被大括号包含的字符串)
    2.对于需要替换的部分,查找是否有对应的替换规则,如果有完成替换
    3.对于没有替换规则的,替换为空串

    代码如下:

    function strConverse(str,obj){
    		var strResult = str.replace(/({)(.*?)(})/g,function(match,pos,orignalTest){
    			var matchContent=match.slice(1,match.length-1);
    			if(obj.hasOwnProperty(matchContent))
    				return obj[matchContent];
    			else
    			return "";
    		});
    		return strResult;
    	}
  • 相关阅读:
    sed
    zabbix时间不同步
    zabbix-agent安装
    zabbix安装(网络)
    sendmail启动报错
    12306:被骂十年不吭声,终成大器
    一文带你看清HTTP所有概念(转)
    为什么 K8s 在阿里能成功(转)
    一文解读融资方式
    一文解读工业互联网 (转)
  • 原文地址:https://www.cnblogs.com/malinlin/p/5997566.html
Copyright © 2011-2022 走看看