Heim  >  Fragen und Antworten  >  Hauptteil

Javascript - geteilte Abschnitte fangen Gleichheitszeichen ab

var string="content=ABCDEFGHIJKLMN="
var ca = string.split("=");
ca[0]=content;
ca[1]=ABCDEFGHIJKLMN;
ca[2]="";
Aber Ich möchte das zweite Gleichheitszeichen nicht abfangen (es muss beibehalten werden), wie soll ich damit umgehen?

代言代言2685 Tage vor1240

Antworte allen(7)Ich werde antworten

  • phpcn_u64

    phpcn_u642018-06-21 21:11:04

    666

    Antwort
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-15 09:25:13

    用正则吧

    var string="content=ABCDEFGHIJKLMN="
    var ca = string.split(/=(?=.)/);

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-06-15 09:25:13

    你不太适合编程啊孩子。。。
    直接取ca[1]+"="就可以了,干嘛非得取到原来的等号呢?思路一定要灵活,等价这个词对于一个程序员是很重要的。

    Antwort
    0
  • typecho

    typecho2017-06-15 09:25:13

    看了你在各回答的评论,妄且猜测你大概是这么一个意图:试图去找出一个编程语言内置的方法,去实现这个功能。只需要调用一下它,比如调用个函数,或者加个参数。

    对么?

    但是问题是现在语言很可能(因为我本人并不十分精通js,不敢下定论一定没有)并没有加入这么一个内置的功能特性,那你就需要自己去实现它。

    其实语言内置的功能,也只是别人预先实现好的而已。你非要去找出一个,反而落入了死板。

    正如@G_Koala_C所说用简单直观的方式解决问题才是王道。

    Antwort
    0
  • 三叔

    三叔2017-06-15 09:25:13

    如果是有大于两个的=不就坑了?所以还得

    str1 = ca[0];
    ca.shift();
    str2 = ca.join('=');

    个人喜欢正则,不过也可以用indexof找到第一个=。但是此方法还要判断返回值是否为-1。

    Antwort
    0
  • 巴扎黑

    巴扎黑2017-06-15 09:25:13

    stringObject.split(separator,howmany)

    separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
    howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

    用法出处http://www.w3school.com.cn/js...

    Antwort
    0
  • 迷茫

    迷茫2017-06-15 09:25:13

    看了 node.jsquerystring模块的源码,按照源码的思路是这样处理的:

    var string="content=ABCDEFGHIJKLMN="
    var kstr,vstr;
    var idx=string.indexOf('=')
    if(idx>=0){
     kstr=string.substr(0,idx)
    vstr=string.substr(idx+1)
    }else{
       kstr=string
      vstr=''
    }
    console.log(kstr,vstr)  //=>content ABCDEFGHIJKLMN=

    Antwort
    0
  • StornierenAntwort