Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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
C# 动态长度子串_C#_String - Fatal编程技术网

C# 动态长度子串

C# 动态长度子串,c#,string,C#,String,我需要将下面字符串的值转换成2个变量 输入 6.3-全日托 预期产出: var price=6.3; //The input is dynamic.Cannot get fixed length var serviceKey="full-day-care"; 我该怎么做子字符串在此不起作用。您可以执行以下操作: var val = "6.3-full-day-care"; var index = val.IndexOf("-"); //first occuarance of - var p

我需要将下面字符串的值转换成2个变量

输入

6.3-全日托

预期产出:

var price=6.3; //The input is dynamic.Cannot get fixed length
var serviceKey="full-day-care";
我该怎么做<代码>子字符串在此不起作用。

您可以执行以下操作:

var val = "6.3-full-day-care"; 
var index = val.IndexOf("-"); //first occuarance of -

var price =double.Parse(val[index]); 
var serviceKey = val.Substring(index);
我只是想表达一下想法。在
price上使用
double.TryParse(…)

double price = 0; 
double.TryParse(val[index], out prince, System.Globalization.InvariantCulture);
你可以这样做:

var val = "6.3-full-day-care"; 
var index = val.IndexOf("-"); //first occuarance of -

var price =double.Parse(val[index]); 
var serviceKey = val.Substring(index);
我只是想表达一下想法。在
price上使用
double.TryParse(…)

double price = 0; 
double.TryParse(val[index], out prince, System.Globalization.InvariantCulture);
您可以使用以下方法:

string s = "6.3-full-day-care";
int index = s.IndexOf('-'); //This gets index of first '-' character

var price = s.Substring(0, index);
var serviceKey = s.Substring(index + 1);

Console.WriteLine(price);
Console.WriteLine(serviceKey);
输出将是

6.3
full-day-care
这里有一个。

您可以使用以下方法:

string s = "6.3-full-day-care";
int index = s.IndexOf('-'); //This gets index of first '-' character

var price = s.Substring(0, index);
var serviceKey = s.Substring(index + 1);

Console.WriteLine(price);
Console.WriteLine(serviceKey);
输出将是

6.3
full-day-care
这里有一个。

这应该可以

var s = "6.3-full-day-care";
var index = s.IndexOf('-');
var price = s.Substring(0, index);
var serviceKey = s.Substring(index + 1);
这应该行得通

var s = "6.3-full-day-care";
var index = s.IndexOf('-');
var price = s.Substring(0, index);
var serviceKey = s.Substring(index + 1);

如果价格和密钥始终以“-”分隔:

string s = "6.3-full-day-care";
int separatorIdx = s.IndexOf( '-' ); // get idx of first '-'

// split original string
string price = s.Substring( 0, separatorIdx );
string serviceKey = s.Substring( separatorIdx+1, s.Length );

如果价格和密钥始终以“-”分隔:

string s = "6.3-full-day-care";
int separatorIdx = s.IndexOf( '-' ); // get idx of first '-'

// split original string
string price = s.Substring( 0, separatorIdx );
string serviceKey = s.Substring( separatorIdx+1, s.Length );

使用String.Split和最大计数


使用String.Split和最大计数


你试过String.Split吗?这里的样式是什么?它是第一个
-
char吗?
Substring
怎么会不起作用?你试过String.Split吗?这里的模式是什么?它是第一个
-
char吗?
Substring
怎么会没有帮助?更好*。另外,
=0
是多余的,因为它是
TryParse
out
参数(在第二条指令中也被拼错为
prince
)。另外,
=0
是多余的,因为它是
TryParse
out
参数(在第二条指令中也被拼错为
prince
)@Sampath通常使用,支持许多编程语言。请看一看。@Sampath是我常用的,它支持很多编程语言。看看吧。