如何从bbcode url标签中提取url+参数? [英] How to extract the url+parameters out of a bbcode url tag?
本文介绍了如何从bbcode url标签中提取url+参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
以下代码输出:
http://www.google.com
http://www.google.com&lang
更改代码以使其输出的最简单方法是什么:
What is the simplest way to change the code so it outputs:
http://www.google.com
http://www.google.com&lang=en¶m2=this¶m3=that
代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TestRegex9928228
{
class Program
{
static void Main(string[] args)
{
string text1 = "try out [url=http://www.google.com]this site (http://www.google.com)[/url]";
Console.WriteLine(text1.ExtractParameterFromBbcodeUrlElement());
string text2 = "try out [url=http://www.google.com&lang=en¶m1=this¶m2=that]this site (http://www.google.com)[/url]";
Console.WriteLine(text2.ExtractParameterFromBbcodeUrlElement());
Console.ReadLine();
}
}
public static class StringHelpers
{
public static string ExtractParameterFromBbcodeUrlElement(this string line)
{
if (line == null)
return "";
else
{
if (line.Contains("]"))
{
List<string> parts = line.BreakIntoParts(']');
if (parts[0].Contains("="))
{
List<string> sides = parts[0].BreakIntoParts('=');
if (sides.Count > 1)
return sides[1];
else
return "";
}
else
return "";
}
else
return "";
}
}
public static List<string> BreakIntoParts(this string line, char separator)
{
if (String.IsNullOrEmpty(line))
return new List<string>();
else
return line.Split(separator).Select(p => p.Trim()).ToList();
}
}
}
推荐答案
最简单还是最高效?你似乎在问两个不同的问题.最简单的就是这样:
Simplest or most efficient? You're asking two different questions it seems. Simplest would be something like this:
变化:
List<string> sides = parts[0].BreakIntoParts('=');
if (sides.Count > 1)
return sides[1];
致:
List<string> sides = parts[0].BreakIntoParts('=');
if (sides.Count > 1)
return parts[0].Replace(sides[0], "");
看起来您更改了标题以删除最高效".这是我看到的最简单的更改(更改的代码行最少).
Looks like you changed title to remove "most efficient". Here's the simplest change (fewest lines of code changed) that I see.
这篇关于如何从bbcode url标签中提取url+参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文