求助一个函数来帮我获取字符串中的值

cjwcommonuse 2015-06-17 03:48:15
我的字符串是这样的
a1;ab;ce;kk:nanren;ii:虐人;备注:fef;
求一个js函数,function(key){return value;} 当我输入ii返回虐人,当我输入备注返回fef,当我输入 fwefw返回''
正则实现最佳,若干分献上
...全文
159 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
cjwcommonuse 2015-06-18
  • 打赏
  • 举报
回复
天,有bug,当出现 kalala:iiii; getValue('lala') 将返回iiii而不是''
cjwcommonuse 2015-06-18
  • 打赏
  • 举报
回复
感谢 3#,我最后应用的代码
<script type="text/javascript">
        String.prototype.getValue = function (key) {
            var reg = new RegExp(key + ":\\s*(.+?)(;|$)");
            var match = reg.exec(this);

            if (match && match.length > 1) {
                return reg.exec(this)[1];
            }
            else {
                return '';
            }
        }

        $(document).ready(function () {
            var s = 'a1;ab;ce;kk:nanren;ii:虐人;备注:fef;';
            alert(s.getValue('ab'));
        });
    </script>
cjwcommonuse 2015-06-18
  • 打赏
  • 举报
回复
引用 6 楼 gy127132060 的回复:
顶3#与4#。。。
3#偏离了我的问题
西红士 2015-06-17
  • 打赏
  • 举报
回复
顶 #6
香蕉猪 2015-06-17
  • 打赏
  • 举报
回复
顶3#与4#。。。
cjwcommonuse 2015-06-17
  • 打赏
  • 举报
回复
引用 1 楼 gxttr 的回复:

var s='a1;ab;ce;kk:nanren;ii:虐人;备注:fef;';

var getValue=function(key){
	var reg=new RegExp(key+":\\s*(.+?)(;|$)");
	
	var match=reg.exec(s);
	
	if(match && match.length>1){
		return reg.exec(s)[1];
	}
	else{
		return '';
	}
}

alert(getValue('ii'));
感谢,明天试一下
scscms太阳光 2015-06-17
  • 打赏
  • 举报
回复
function fun(key){
  var a = "a1;ab;ce;kk:nanren;ii:虐人;备注:fef;".match(new RegExp(";"+key+":([^;]+)"));
  return a ? a[1] : "";
}
天际的海浪 2015-06-17
  • 打赏
  • 举报
回复

//一定要用字符串么,用对象多好,可以按json格式来写
var obj = {"kk":"nanren","ii":"虐人","备注":"fef"};
function get(key)
{
	return obj[key]||"";
}
alert(get("ii"));
alert(get("aaaa"));


cy_Calvin 2015-06-17
  • 打赏
  • 举报
回复

function get(key)
{
     var  string = '';//字符串

    var len = key.length + 1 ;
   
     var start = string.indexof(key+':');
     
    if(start >0)
     {
         var end =  string.indexof(';',start );

         return  string.substring(start+len,end)
      }

    return '' ;
}

遥望那些年 2015-06-17
  • 打赏
  • 举报
回复

var s='a1;ab;ce;kk:nanren;ii:虐人;备注:fef;';

var getValue=function(key){
	var reg=new RegExp(key+":\\s*(.+?)(;|$)");
	
	var match=reg.exec(s);
	
	if(match && match.length>1){
		return reg.exec(s)[1];
	}
	else{
		return '';
	}
}

alert(getValue('ii'));

87,987

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧