gpt4 book ai didi

c# - Regex.Split 特定字符

转载 作者:行者123 更新时间:2023-11-30 21:58:09 24 4
gpt4 key购买 nike

我试图让我的字符串在任何 Non Word Characters (\W) 包括 spaces包括这些字符: ._$。我也试图保留 Regex.Split spaces

的任何分隔符

我该怎么做?我读过很多问题,但没有任何意义。这是我最新的代码:

string[] result = Regex.Split (source, @"(\W[^(.|_|#|$)])");

编辑:

举个例子

      using System.Text;

我想要:

使用 _ System.Text _ ;

(当前)结果是:

_ _ 使用 _ System.Text _ ; _

最佳答案

您可以使用以下特定于 .NET 的 [\W-[._$#\s]])|\s+ 正则表达式并利用 C# LINQ 删除空数组项:

var txt = "      using System.Text;";
var splts = Regex.Split(txt, @"([\W-[._$#\s]])|\s+").Where(s => s != String.Empty).ToArray();

输出:

enter image description here

正则表达式 - [\W-[._$#\s]])|\s+ - 使用 character class subtraction这比环视更有效,因为它利用了 .NET 正则表达式引擎的所有优化。 [\W-[._$#\s]] 表示之外的任何非单词字符。, _, $#空格

关于c# - Regex.Split 特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30266840/

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