如何在jstl中将字符串分成两类?

时间:2016-05-20 11:00:53

标签: javascript

我有一个字符串, 字符串值=“Bhavani<><>>> Pallavi<><>>> Charanya<> 14”;

现在我需要拆分名称和那些值。 我无法确定该怎么做。

我需要将值打印为

Output
---

-----------------------------
' Name       '  value       ' 
'------------'--------------'
' Bhavani    '  12          '
' Pallavi    '  13          '
' Charanya   '  14          '
'            '              '
----------------------------'

我认为可以在jstl级别完成.. 但任何人都可以帮我解决这个问题。

8 个答案:

答案 0 :(得分:2)

您可以使用str.replace创建对象:



strvalue = "Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14"
 
obj={};

strvalue.replace(/(\w+)<>(\w+)/g,function(_,m1,m2){
  obj[m1]=m2
})
 
console.log(obj)
&#13;
&#13;
&#13;

答案 1 :(得分:1)

这应该这样做:

var str = 'Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14';
str = str.split('<<>>')
for(var i = 0; i < str.length; i++) {
  str[i] = str[i].split('<>');
}
alert(str.join("\n"));

答案 2 :(得分:0)

首先使用&lt;&lt;&gt;&gt;进行拆分 而不是分裂&lt;&gt; 所以你将获得Bhavani阵列,12个索引中的12个。 它很容易以任何方式显示在视图上。

答案 3 :(得分:0)

就个人而言,我将键值对存储在一个对象中:

var myObj = {};
var string = 'Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14';
var stringArray = string.split('<<>>');

for(i in stringArray){
    var key = stringArray[i].split('<>')[0];
    var value = stringArray[i].split('<>')[1];
    myObj[key] = value;
}

console.log('My object looks like', myObj);

答案 4 :(得分:0)

这是我的解决方案,您将在每个对象中获得一个名称和值的对象数组:

&#13;
&#13;
let value = "Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14";
let splittedString = value.split("<<>>");
let names = [];

splittedString.forEach(function(value) {
  let splittedProps = value.split("<>");
  names.push({
    name: splittedProps[0],
    value: splittedProps[1]
  });
});

console.log(names);
&#13;
&#13;
&#13;

答案 5 :(得分:0)

var str =  "Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14";
var strArr = str.split("<<>>");
var result = {};
for(var i in strArr){
    var p = strArr[i].split("<>");
    result[p[0]] = p[1];
}

console.log(result);

答案 6 :(得分:0)

首先用&lt;&lt;&gt;&gt;分开 然后用&lt;&gt;

分割字符串

var string =&#39; Bhavani&lt;&gt;&lt;&lt;&gt;&gt;&gt; Pallavi&lt;&gt;&gt;&gt;&gt; Charanya&lt;&gt;&#39;;

string = string.split(&#39;&lt;&lt;&gt;&gt;&#39;);

for(var i = 0; i&lt; string.length; i ++){

string [i] = string [i] .split(&#39;&lt;&gt;&#39;);

}`

&#13;
&#13;
var string = 'Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14';

string = string.split('<<>>');

for(var i = 0; i < string.length; i++) {

  string[i] = string[i].split('<>');

}

alert(string.join("\n"));
&#13;
&#13;
&#13;

`

答案 7 :(得分:0)

var str = "Bhavani<>12<<>>Pallavi<>13<<>>Charanya<>14";
var txt = str.split("<<>>").join("|").split("<>").join("|").split("|")
var object=[];
for (var i=0; i<txt.length;i=i+2){
	object.push({Name:txt[i],Value:txt[i+1]});	
}
console.log(object);