如何在分隔符上分割字符串,并将分隔符保留为结果数组中的元素?

阿维夫·科恩(Aviv Cohn)

在此站点上以两种方式提出了这个问题:第一种方法实际上是一个不同的问题;OP希望将分隔符保留在结果元素的末尾/开头。第二个问题收到一个答案,其中包括一个我不知道如何扩展的正则表达式。

我正在寻找一种在分隔符上拆分字符串的方法,其中分隔符将作为元素包含在结果数组中。请说明如何为该功能选择自定义分隔符(最有可能是正则表达式)。

谢尔盖·卡里尼琴科(Sergey Kalinichenko)

您可以使用正则表达式指定带有前瞻性或后瞻性的空表达式。

例如,假设您希望将字符串拆分为以下任意字符:

'(' ' ' ',' ')' '*' '/' '+' '-'

然后,您可以构造一个表达式,在前瞻性或lookbehind子句(即(?=...)(?<=...)中列出它们,并使用进行拆分Regex.Split,如下所示:

string input = "12 / 34+(45-56)*678";
string pattern = "(?=[( ,)*/+-])|(?<=[( ,)*/+-])";

string[] substrings = Regex.Split(input, pattern);
foreach (string match in substrings) {
    Console.WriteLine("'{0}'", match);
}

演示

运行此命令将产生以下输出:

'12'
' '
'/'
' '
'34'
'+'
'('
'45'
'-'
'56'
')'
'*'
'678'

请注意如何包括所有分隔符,以及空格,括号和运算符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Java中为分隔符分割字符串

javascript拆分字符串并将分隔符保留为自己的数组值

javascript:为多个分隔符分割字符串,但也将分隔符保留为单独的标记

在保留分隔符的同时分割字符串

如何分割字符串,但保留分隔符在Java中?

在Python中,如何分割字符串并保留分隔符?

如何从 txt 文件中提取带有逗号分隔符的字符串,并将逗号分隔符分隔的每个元素解析为类构造函数

如何从 txt 文件中提取带有逗号分隔符的字符串,并将逗号分隔符分隔的每个元素解析为类构造函数

分割字符串并将分隔符字符串保留在C#中

以点为分隔符分割字符串

如何使用较长的分隔符而不是较短的分隔符来分割字符串?

如何在 C# 中拆分字符串并保留分隔符

如何在数据框中拆分字符串并将逗号作为分隔符

如何在分隔符处分割字符串,除非该分隔符后面跟随特定模式?

如何在R中使用tidyr :: separate分割字符串并保留分隔符字符串的值?

分割字符串并保留分隔符作为新的结果项

如何拆分字符串并保留特定的分隔符?

如何拆分字符串但保留分隔符?

拆分字符串但保留 C 中的分隔符

迅速如何分割字符串但包含分隔符

如何用“”分隔符分割字符串?

用python中的分隔符分割字符串

用|分割字符串 Java中的分隔符

Python:如何在字符串拆分结果中包含分隔符并在结果列表中的分隔符前面添加一个单词?

如何在 Bash 中的分隔符 ` 上拆分字符串?

如何在Bash中的分隔符上拆分字符串?

如何分割字符串并在其中保留分隔符

如何使用Regex.Split分割字符串并保留所有分隔符?

根据子字符串分隔符拆分字符串,将分隔符保留在结果中