gpt4 book ai didi

c# - 按字符拆分字符串,但跳过某些字符组合

转载 作者:搜寻专家 更新时间:2023-11-01 04:45:37 25 4
gpt4 key购买 nike

假设我有一个类似于以下形式的字符串:

"First/Second//Third/Fourth"(注意 SecondThird 之间的双斜杠)

我希望能够将此字符串拆分为以下子字符串 "First"、"Second//Third"、"Fourth"。基本上,我想要的是将字符串拆分为一个字符(在本例中为 /),而不是该字符的两倍(在本例中为 //)。我以多种方式想到了这一点,但无法让它发挥作用。

我可以使用 C# 和/或 JavaScript 中的解决方案。

谢谢!

编辑:我想要一个简单的解决方案。我已经考虑过逐个字符地解析字符串,但是在我的实际使用中这太复杂了。

最佳答案

试试这个 C# 解决方案,它使用积极的后视和积极的前瞻:

        string s = @"First/Second//Third/Fourth";
var values = Regex.Split(s, @"(?<=[^/])/(?=[^/])", RegexOptions.None);

它说:分隔符是/,它前面是除/以外的任何字符,后面是除/以外的任何字符。

这是另一个更短的版本,它使用负向后视和前视:

        var values = Regex.Split(s, @"(?<!/)/(?!/)", RegexOptions.None);

这表示:分隔符是 /,它前面没有 /,后面也没有 /

您可以找到更多关于“环顾四周”的信息 here .

关于c# - 按字符拆分字符串,但跳过某些字符组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15108728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com