在两个单词之间获取文字

时间:2013-03-31 20:02:00

标签: c# text

我需要知道如何在两个给定的单词之间得到单词。 遗憾的是我不知道该怎么做。 例如:大家好。

我该怎么做?

4 个答案:

答案 0 :(得分:8)

如果我理解这个问题......

public static String GetTextBetween(String source, String leftWord, String rightWord)
        {
            return
                Regex.Match(source, String.Format(@"{0}\s(?<words>[\w\s]+)\s{1}", leftWord, rightWord),
                            RegexOptions.IgnoreCase).Groups["words"].Value;
        }

使用:

Console.WriteLine(GetTextBetween("Hello good day", "hello", "day"));

在msdn:regular expressions

上阅读

答案 1 :(得分:1)

你需要这样的方法:

  1. IndexOf
  2. Substring
  3. 只需使用IndexOf返回的值将两个单词串起来。

    这很简单,如果您需要进一步的帮助 - 请发表评论。

答案 2 :(得分:0)

你可以使用正则表达式和string.Split,以保持正则表达式简单:

Regex.Match("string here",@"(?<=firstWord).*?(?=secondWord)").Value
    .Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries)

答案 3 :(得分:0)

最初,您有一个字符串,并且您想要将前几个字符提取到一个新字符串中。我们可以在这里使用带有两个参数的Substring实例方法,第一个是0,第二个是所需的长度。

使用子串[C#]

的程序
using System;

class Program
{
    static void Main()
    {
    string input = "OneTwoThree";

    // Get first three characters
    string sub = input.Substring(0, 3);
    Console.WriteLine("Substring: {0}", sub);
    }
}

输出

子串:一个

参考SubString