我的要求是解析Http Urls并相应地调用函数.在我当前的实现中,我使用嵌套的if-else语句,我认为这不是一种优化方式.你能建议其他一些有效的approch吗?
网址如下:
server/func1server/func1/SubFunc1server/func1/SubFunc2server/func2/SubFunc1server/func2/SubFunc2我正在努力将代码从JAVA移植到C#,而部分JAVA代码使用了tokenizer - 但我的理解是,Java中stringtokenizer生成的数组也会有分隔符(在这种情况下为+, - ,/,*,(,))作为代币.我试图使用C#Split()函数,但它似乎消除了分隔符本身.最后,这将解析一个字符串并将其作为计算运行.我做了很多研究,但没有找到任何关于这个主题的参考资料.
有谁知道如何让它们遇到的实际分隔符在split数组中?
令牌化代码:
public CalcLexer(String s)
{
char[] seps = {'\t','\n','\r','+','-','*','/','(',')'};
tokens = s.Split(seps);
advance();
}
Run Code Online (Sandbox Code Playgroud)
测试:
static void Main(string[] args)
{
CalcLexer myCalc = new CalcLexer("24+3");
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
"24 + 3"将产生以下输出:"24","3"我正在寻找输出"24","+","3"
在完全公开的性质中,该项目是类分配的一部分,并使用以下完整的源代码:
http://www.webber-labs.com/mpl/source%20code/Chapter%20Seventeen/CalcParser.java.txt http://www.webber-labs.com/mpl/source%20code/Chapter%20Seventeen/CalcLexer .java.txt
如何将字符串拆分为C#中的字符数组?
示例使用的字符串字是"机器人".
该程序应打印出来:
r
o
b
o
t
Run Code Online (Sandbox Code Playgroud)
原始代码段:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.IO;
using System.Text.RegularExpressions;
namespace Testing
{
class Program
{
static void Main(string[] args)
{
String word = "robot";
String[] token = word.Split(); // Something should be placed into the () to
//print letter by letter??
foreach (String r in token)
{
Console.WriteLine(r);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
如何正确实施代码?
我使用字符串来存储国家代码及其成本中心代码值.我希望通过使用LINQ查询来解除字符串 和; 字符.srting是
IND|001;TWN|002;USA|003;LDN|;MYS|005;
Run Code Online (Sandbox Code Playgroud)
请帮我用LINQ溢出字符串值