获取两个单词之间的文字
我需要知道如何在两个给定的单词之间得到单词。 遗憾的是我不知道该怎么做。 例如:大家好。
我该怎么做?
如果我理解这个问题……
public static String GetTextBetween(String source, String leftWord, String rightWord) { return Regex.Match(source, String.Format(@"{0}\s(?[\w\s]+)\s{1}", leftWord, rightWord), RegexOptions.IgnoreCase).Groups["words"].Value; }
使用:
Console.WriteLine(GetTextBetween("Hello good day", "hello", "day"));
在msdn上阅读它: 正则表达式
你需要这个方法:
- 指数
- 子
只需使用IndexOf返回的值将两个单词串起来。
这很简单,如果您需要进一步的帮助 – 请评论。
你可以使用正则表达式和string.Split,以保持正则表达式简单:
Regex.Match("string here",@"(?<=firstWord).*?(?=secondWord)").Value .Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries)
最初这里有一个字符串,您想要将前几个字符提取到一个新字符串中。 我们可以在这里使用带有两个参数的Substring实例方法,第一个是0,第二个是所需的长度。
使用Substring [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