Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 将字符串分解为数组/列表bij字母和非字母字符_Arrays_Regex_String_Split_Alphabet - Fatal编程技术网

Arrays 将字符串分解为数组/列表bij字母和非字母字符

Arrays 将字符串分解为数组/列表bij字母和非字母字符,arrays,regex,string,split,alphabet,Arrays,Regex,String,Split,Alphabet,我需要根据字母字符和非字母字符的集合,将字符串分解为数组或字符集列表 例如: 字符串=-“你好12$th'ere!@4” 所需结果=[-“][Hello][12$][th]['][ere][!@4] 有人知道如何获得所需的结果吗?我试图通过搜索regex.split解决方案来实现这一点,但我找不到适合我需要的表达式。这个简单的regex实现了这个技巧:([a-zA-Z]+|[^a-zA-Z]+) 测试一下。这个简单的正则表达式可以做到:([a-zA-Z]+|[^a-zA-Z]+) 测试它。您可以

我需要根据字母字符和非字母字符的集合,将字符串分解为数组或字符集列表

例如:

字符串=-“你好12$th'ere!@4”

所需结果=[-“][Hello][12$][th]['][ere][!@4]


有人知道如何获得所需的结果吗?我试图通过搜索regex.split解决方案来实现这一点,但我找不到适合我需要的表达式。

这个简单的regex实现了这个技巧:
([a-zA-Z]+|[^a-zA-Z]+)


测试一下。

这个简单的正则表达式可以做到:
([a-zA-Z]+|[^a-zA-Z]+)


测试它。

您可以使用Regex.Split和一个模式,该模式在字母和非字母之间查找边界,通常使用不同的表达式:

var t=Regex.Split(s, @"(?<=[a-zA-Z])(?=[^a-zA-Z])|(?<=[^a-zA-Z])(?=[a-zA-Z])");

var t=Regex.Split(s,@)(?您可以将Regex.Split与一个模式一起使用,该模式使用不同的表达式查找字母和非字母之间的边界:

var t=Regex.Split(s, @"(?<=[a-zA-Z])(?=[^a-zA-Z])|(?<=[^a-zA-Z])(?=[a-zA-Z])");

var t=Regex.Split(s,@“(?Thanx很多!!像一个符咒一样工作:-)你确定吗?检查。检查并请修复你的模式。它应该是[a-zA-Z]og[a-Z],忽略大小写。当字符串以一系列字母结尾时,这会起作用吗?@WiktorStribiżew谢谢你指出这一点。我错过了大写字母Z,没有注意:)Thanx很多!!像一个符咒一样工作:-)你确定吗?检查。检查并请修复你的图案。它应该是[a-zA-Z]og[a-Z],忽略大小写。当字符串以一连串字母结尾时,这会起作用吗?@WiktorStribiżew谢谢你指出。我错过了大写字母Z,没有注意:)