你好世界“波士顿红袜队”,“辣椒比萨”,“奶酪比萨”,啤酒
输出应该是
你好,世界波士顿红袜辣椒酱比萨饼比萨啤酒
这就是我所拥有的
class Program
{
static void Main(string[] args)
{
string input = System.IO.File.ReadAllText(@"input.txt");
string censoredfile = System.IO.File.ReadAllText(@"censored.txt");
var outputFile = "output.txt";
var results = Regex.Split(censoredfile, "(?:^|,|[ ])(\"(?:[^\"]+|\"\")*\"|[^,]*)");
foreach (var result in results)
{
Console.WriteLine(result);
}
}
}这是我的输出
你好世界“波士顿红袜队” “辣香肠比萨” “奶酪比萨” 啤酒 区块报价
发布于 2022-11-10 09:16:58
您可以使用
var text = "Hello world \"Boston Red Sox\", 'Pepperoni Pizza', 'Cheese Pizza', beer";
var pattern = @"""(?<r>[^""]*)""|'(?<r>[^']*)'|(?<r>[^\s,]+)";
var tokens = Regex.Matches(text, pattern).Cast<Match>().Select(x => x.Groups["r"].Value).ToList();
Console.WriteLine(string.Join("\n", tokens));见C#演示。输出:
Hello
world
Boston Red Sox
Pepperoni Pizza
Cheese Pizza
beer也可以看看regex演示。详细信息
"(?<r>[^"]*)" - ",然后捕获到组"r“中的除"之外的零个或多个字符,然后是"字符。| -或'(?<r>[^']*)' - ',然后捕获到组"r“中的除'之外的零个或多个字符,然后是'字符。| -或(?<r>[^\s,]+) -组"r":除空格和逗号外的一个或多个字符。https://stackoverflow.com/questions/74383123
复制相似问题