如何拆分字符串

时间:2009-11-23 11:42:38

标签: c# string

我有一个像123Prefix1pics.zip

这样的字符串

我想将它拆分为123 Prefix1 pics.zip并将它们存储在不同的变量中 我试图用c#,。net来做 jst litle对如何使用split方法感到困惑

5 个答案:

答案 0 :(得分:7)

splitArray = Regex.Split(subjectString, @"(?<=\p{N})(?=\p{L})");

可以在C#中分割数字(\p{N})和字母(\p{L})之间的位置。

如果您还想在字母和数字之间分配,请使用

splitArray = Regex.Split(subjectString, @"(?<=\p{L})(?=\p{N})|(?<=\p{N})(?=\p{L})");

但是,这太过分了你的例子。

答案 1 :(得分:5)

您只想分割那一个字符串?太容易了!

string filename = "123Prefix1pics.zip"
string part1 = "123"
string part2 = "Prefix1"
string part3 = "pics.zip"

好的,这是一个笑话,但它给出了正确的答案。除非您概括了拆分规则或提供更多示例,否则我们只能猜测。

可能要求在数字后打断字符串,但我只是猜测。

答案 2 :(得分:1)

您可以从:

开始
string filename = "123Prefix1pics.zip"
string part1 = filename.Substring(0, 3);
string part2 = filename.Substring(3, 7);
string part3 = filename.Substring(10, 4);

您还可以注意到String.Split()需要一个分隔符参数,如;,。由于您没有任何分隔符,您可以尝试两种方法:

  • 确保所有文件名的格式相同;通过这种方式,您可以使用Substring()来破解字符串
  • 您可以识别更一般的模式,如“数字,7个字符加上4个字符”并使用正则表达式。这是一种更先进的解决方案,可能导致维护问题;

我建议你坚持使用第一个选项。

答案 3 :(得分:1)

你可以这样拆分:

  • 你的ip在一个字符串变量中如下:
  • 创建一个char矢量
  • 然后是一个字符串向量

代码:

string theIP="this is string"; 
char[] separator={' '}; //you can put multiple separators
string[] result = theIP.Split(separator,StringSplitOptions.None);

这意味着result[0]"this"result[1]"is",依此类推。

你可以在这里找到一个关于字符串拆分的好教程:

http://goldwin-advertising.ro/index.php?option=com_content&view=article&id=10:splitstring&catid=3:howto&Itemid=5

祝你好运!

答案 4 :(得分:0)

看起来你想按固定尺寸分割。

因此请使用yourString.Substring(0, 3);