首页 > 解决方案 > 从字符串中提取年份并解析为 int

问题描述

例子...

"6/1/1986 24:00,ak,us,light,180,51.88,-176.6580556"

我只尝试提取"1986",但我不断收到一条错误消息,提示“输入字符串的格式不正确。”

string date = data[0];
string year1 = date.Substring(4);
int year = int.Parse(year1);

标签: c#stringparsing

解决方案


如果字符串中年份的位置始终相同 - 4-5-6-7 个字符,则:

string date = "6/1/1986 24:00,ak,us,light,180,51.88,-176.6580556";
int year = int.Parse(date.Substring(4, 4));

子串

如果行格式(年份的位置)可能不同,例如:“06/01/1986 24:00, ak, us, light, 180.51.88, -176.6580556”,则使用正则表达式:

正则表达式(字符串)


推荐阅读