C# 如何从列表字符串中获取值?
字符串列表的返回结果为:C# 如何从列表字符串中获取值?,c#,jquery,C#,Jquery,字符串列表的返回结果为: var result= "1,red,2,blue,3,green,4,orange"; 我想使用一个循环,得到像1,2,3,4和红色,蓝色,绿色,橙色的结果 我的代码如下。 我在split中发现了错误。 对象不支持拆分。 我使用的是jQuery1.10.1 $.ajax({ type: "GET", url: "/_vti_bin/userService/myservic
var result= "1,red,2,blue,3,green,4,orange";
我想使用一个循环,得到像1,2,3,4和红色,蓝色,绿色,橙色的结果
我的代码如下。
我在split中发现了错误。
对象不支持拆分。
我使用的是jQuery1.10.1
$.ajax({
type: "GET",
url: "/_vti_bin/userService/myservice.svc/GetUserListForMentionSign?query" + query,
async: false,
dataType: "JSON",
cache: false,
processdata: true,
success: function (result) {
data = result;
//arrary
var resultArray = data.Split(',');
var id = new Array(), name = new Array();
$.each(resultArray, function (index, value) {
if (isNaN(value)) {
name.push(value);
alert(name.push(value));
}
else {
id.push(value);
}
});
下面是c的web服务
public List<string> GetUserListForMentionSign(string username)
{
List<User> UserList = new List<User>();
List<string> returnvalue=new List<string>();
try
{
string returnstring = string.Empty;
DataTable dt = null;
dt = Library.Helper.FindUser(username, 200);
foreach (DataRow dr in dt.Rows)
{
if (dr["Title"].ToString() != "Person.aspx") // those user without the name
{
User user = new User();
user.id = dr["ID"].ToString();
user.name = dr["Name"].ToString();
UserList.Add(spuser);
}
}
}
catch (Exception ex)
{
}
return UserList.Select(a=>new[]{ a.name.ToString(),a.id.ToString()}).SelectMany(a=>a).ToList();
}
尝试以下操作:使用.split将字符串转换为数组,然后迭代数组。内部循环检查值是否为未使用isNaN的数量,并将值推送到相应的数组中
var result= "1,red,2,blue,3,green,4,orange";
var resultArray = result.split(",");
var numberArray = new Array(), colorArray = new Array();
$.each(resultArray , function( index, value ) {
if(isNaN(value))
colorArray.push(value);
else
numberArray.push(value);
});
alert(colorArray.toString());
alert(numberArray.toString());
可以使用函数创建包含偶数和奇数索引值的两个不同数组,并对其进行操作
var result = "1,red,2,blue,3,green,4,orange";
var arr=result.split(',');
var odd = jQuery.map( arr, function(n,i){
return i%2 ? n : null;
});
var even = jQuery.map( arr, function(n,i){
return i%2 ? null : n;
});
或手动循环
for(int i = 0; i < arr.lenght; i++)
{
int cont;
if (int.TryParse(arr[i], out cont) == false)
text[i] = i;
else
num[i] = cont;
}
注意:从服务器端拆分C。请尝试
var result = "1,red,2,blue,3,green,4,orange";
var splitValue = result.split(",");
var num = [];
var str = [];
for (var i in splitValue) {
if (i % 2 === 0) {
num.push(splitValue[i]);
} else {
str.push(splitValue[i]);
}
}
console.log(num);
console.log(str);
在C语言中,我实现了这样的功能。 逻辑:输入被解析为拆分num和strings,并存储到不同的数组中。最后打印结果数组
int main()
{
char *str, result []= "1,red,2,blue,3,green,4,orange";
char *p, *p1;
char num[10], i=0;
char name[10][15], j=0,k;
str =result;
while (1)
{
p= strchr (str, ',');
if(!p1)
break;
num [i]=atoi (p-1) ;
i++;
p1= strchr (p+1, ',');
if(!p1){
strcpy ( name[j], p+1);
j++;
break;
}
p1[0]='\0';
strcpy ( name[j], p+1);
j++;
str=p1+1;
}
for (k=0; k<i; ++k){
printf ( "%d ", num[k]);
}
printf ("\n");
for (k=0; k<j; ++k){
printf ( "%s ", name[k]);
}
printf ("\n");
}
你能具体说明你想用什么语言来解决这个问题吗?你尝试过什么?你用C和JQuery来标记你的问题,那么你想把你的字符串拆分到哪里?在服务器端使用C,还是在客户端使用Jquery?若你们想在服务器端拆分字符串,我已经发布了一个C的答案。我使用了C web服务中的服务。我没有错误。之后我会在c服务上发布。我不希望1,2,3,4是整数。1,2,3,4也是字符串值。如何检查它。numberArray.toString将只提供字符串。检查警报,我刚刚把逻辑分开1,2,3,4和红色,蓝色,绿色,橙色的眼睛,你的代码是工作。我的要求不同。非常感谢。
int main()
{
char *str, result []= "1,red,2,blue,3,green,4,orange";
char *p, *p1;
char num[10], i=0;
char name[10][15], j=0,k;
str =result;
while (1)
{
p= strchr (str, ',');
if(!p1)
break;
num [i]=atoi (p-1) ;
i++;
p1= strchr (p+1, ',');
if(!p1){
strcpy ( name[j], p+1);
j++;
break;
}
p1[0]='\0';
strcpy ( name[j], p+1);
j++;
str=p1+1;
}
for (k=0; k<i; ++k){
printf ( "%d ", num[k]);
}
printf ("\n");
for (k=0; k<j; ++k){
printf ( "%s ", name[k]);
}
printf ("\n");
}