特定空格数的分割字符串 - C#

Umm*_*qui 0 c# string split substring

我有一个字符串,North Ridge NJ 01234我想将它们拆分为City,State和zip以存储到数据库中.我试图基于空格分割,我得到四个子串而不是三个.有什么办法我可以向后拆分但只能在两个空间上拆分吗?

Eri*_* J. 6

如果你可以假设最后一个数组元素是ZIP和那个之前的状态代码

string[] words = s.Split(' ');

var zip = words[words.Length - 1];
var state = words[words.Length - 2];
var city = string.Join(" ", words, 0, words.Length - 2);
Run Code Online (Sandbox Code Playgroud)

使用string.Join overloa d,它允许您指定要加入的起始索引和数组元素的数量.

请注意,如果假设不成立,代码可能会失败.例如,如果可以通过空格或制表符分隔数据,则需要将两个字符都提供给string.Split().如果错误的数据输入可能导致多个空格字符,您需要在运行此代码之前检查该可能性(例如New York, NY 12345).

  • 由于输入可能性信息有限,这是最好的方法 (2认同)