string str = "www.baidu.com,百度,谷歌,www.google.com,www.cuctv.com,视友网,www.zhaopin.com,智联";
以<a href=“www.baidu.com”>百度</a>,<a href=“www.google.com”>谷歌</a>
这种形式输出,怎么截取啊?
按逗号分隔,生成一个数组。然后遍历,每两个生成一组,这一组就有一个是网址一个是名称了,你看有www开头的是网址,就能组成你要的格式了。
string str = "www.baidu.com,百度,谷歌,www.google.com,www.cuctv.com,视友网,www.zhaopin.com,智联";
string[] arr = str.Split(',');
for (int i = 0; i < arr.Length; i++)
{
Response.Write(arr[i]+"<br/>");
}
遍历数组后怎么把两个生成一组啊?
@blog_doudou:
const string str = "www.baidu.com,百度,谷歌,www.google.com,www.cuctv.com,视友网,www.zhaopin.com,智联";
string[] arr = str.Split(',');
for (int i = 0; i < arr.Length/2; i++)
{
//Response.Write(arr[i] + "<br/>");
var str1 = arr[2*i];
var str2 = arr[2*i + 1];
string url;
string name;
if(str1.IndexOf("www.", System.StringComparison.Ordinal)>=0)
{
url = str1;
name = str2;
}
else
{
url = str2;
name = str1;
}
Response.Write(string.Format("<a href=\"{0}\">{1}</a>",url,name));
}
@LCM: 超出索引了。
string str = "www.baidu.com,百度,谷歌,www.google.com,www.cuctv.com,视友网,www.zhaopin.com,智联";
string[] arr = str.Split(',');
for (int i = 0; i < arr.Length - 1; i++)
{
string str1 = arr[i];
string str2 = arr[i + 1];
string url;
string name;
if (str1.IndexOf("www.", System.StringComparison.Ordinal) >= 0)
{
url = str1;
name = str2;
}
else
{
url = str2;
name = str1;
}
string link = string.Format("<a href=\"{0}\">{1}</a>", url, name);
link = Server.HtmlEncode(link);
Response.Write(link);
i++;
}
终于有一种对的了。
@blog_doudou: 什么情况下超出索引?
@LCM: 就你写的那段就超出索引,下面这段可以,你运行下哈
这个每两个生成一组,是二维数组。这是截取,再就是查找了。按www开头的查找。
虽然很长很难读,不过看着真的好爽。
string str = "www.baidu.com,百度,谷歌,www.google.com,www.cuctv.com,视友网,www.zhaopin.com,智联";
var pattern = "<a href=\"{0}\">{1}</a>";
string output = string.Join(",", str.Split(',')
.Select((s, i) => new { Content = s, Order = i, IsAddress = s.StartsWith("www.") })
.GroupBy(a => a.Order / 2)
.Select(g => string.Format(pattern, g.Single(a => a.IsAddress).Content, g.Single(a => !a.IsAddress).Content)));
另外我觉得你似乎应该把输出结果里的href="www.baidu.com" 这样的都改成href="http://www.baidu.com",否则点击之后会访问http://www.yoursite.com/www.baidu.com了。
是啊,我都看不懂,对于我这样的水平,还是先把简单的方法学会吧↖(^ω^)↗