我很难完全使用正则表达式匹配多个单词,
这是我的文字,
谷歌正在寻求拆除Spotify-Apple在音乐领域的“双头垄断” 分发,本周第四次改革其音乐服务 试图说服YouTube的数十亿用户付费。 谷歌周二推出新的音乐订阅服务 将通过YouTube最昂贵的广告活动推广它。 这项名为YouTube音乐的服务模仿Spotify模型:那里 将是一个免费的,广告支持的层,功能更有限,并且a 每月10美元的订阅,没有广告和额外的 功能
我希望匹配3个字Spotify-Apple
,US10
和extra functions
,我希望其他所有内容都被忽略我试过了
\bSpotify-Apple\b(.|\n)*?\bUS10\b(.|\n)*extra functions
它可以突出显示所有三个短语,但也突出显示它们之间的所有文本。我怎么能只匹配三个单词而忽略其他一切呢?
我试图忽略它,就像使用^
一样,
\bSpotify-Apple\b^(.|\n)*?\bUS10\b^(.|\n)*extra functions
答案 0 :(得分:5)
答案 1 :(得分:2)
var file = //file path
var sb = new StringBuilder();
var lineNum = 1;
var output = string.Empty;
using (var reader = new StreamReader(file))
{
while (!reader.EndOfStream)
{
var line = reader.ReadLine();
if (lineNum % 3 == 0)
{
output += sb.ToString() + "\n";
sb.Clear();
}
else
sb.Append(line);
lineNum++;
}
}
richTextBox1.Text = output;
这会给出您想要匹配的三个单词。