c# - 在第一个空格处划分字符串

标签 c# regex string split

对于聊天机器人,如果有人说“!say”,它会在空格后背诵你说的话。简单。

示例输入:

!say this is a test

期望的输出:

this is a test

为了论证,字符串可以表示为ss.Split(' ') 产生一个数组。

s.Split(' ')[1] 只是空格后的第一个单词,关于完全划分并得到第一个空格后的 所有 个单词有什么想法吗?

我试过类似的方法:

s.Split(' ');
for (int i = 0; i > s.Length; i++)
{
    if (s[i] == "!say")
    {
        s[i] = "";
    }
}

输入是:

!say this is a test

输出:

!say

这显然不是我想要的:p

(我知道这个问题有几个答案,但在我搜索的地方没有一个是用 C# 写的。)

最佳答案

使用具有“最大”参数的 s.Split 的重载。

是这个: http://msdn.microsoft.com/en-us/library/c1bs0eda.aspx

看起来像:

var s = "!say this is a test";
var commands = s.Split (' ', 2);

var command = commands[0];  // !say
var text = commands[1];     // this is a test

关于c# - 在第一个空格处划分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9366690/

相关文章:

c# - 我可以防止 SQL 注入(inject)吗?

swift - 如何对字符串日期数组进行排序

javascript - 如何使用 Javascript/JQuery/JSON 获取字符串的子集?

c# - async 和await 可以被省略吗?

c# - 将结构数组从 C#(.NET Core) 传递到 C++(unamnaged)

c# - 如何仅在 C# 中获取 RSACryptoServiceProvider 公钥和私钥

javascript - 允许使用 JavaScript 正则表达式将金额输入到输入中

c# - 如何在C#中使用正则表达式提取有用的数据

javascript 凯撒密码算法

Java:将最后一位数字与 INT 的其余部分分开