add DecimalStringSplitter
This commit is contained in:
parent
fa2024074e
commit
12b4f9cfe4
@ -51,13 +51,23 @@ namespace MBS.Framework
|
|||||||
mvarStringPart = stringPart;
|
mvarStringPart = stringPart;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public struct DecimalStringSplitterResult
|
||||||
|
{
|
||||||
|
private decimal mvarDecimalPart;
|
||||||
|
public decimal DecimalPart { get { return mvarDecimalPart; } }
|
||||||
|
|
||||||
|
private string mvarStringPart;
|
||||||
|
public string StringPart { get { return mvarStringPart; } }
|
||||||
|
|
||||||
|
public DecimalStringSplitterResult(decimal doublePart, string stringPart)
|
||||||
|
{
|
||||||
|
mvarDecimalPart = doublePart;
|
||||||
|
mvarStringPart = stringPart;
|
||||||
|
}
|
||||||
|
}
|
||||||
public static class NumericStringSplitter
|
public static class NumericStringSplitter
|
||||||
{
|
{
|
||||||
public static IntStringSplitterResult SplitIntStringParts(this string value)
|
public static IntStringSplitterResult SplitIntStringParts(this string value, int start = 0)
|
||||||
{
|
|
||||||
return SplitIntStringParts(value, 0);
|
|
||||||
}
|
|
||||||
public static IntStringSplitterResult SplitIntStringParts(this string value, int start)
|
|
||||||
{
|
{
|
||||||
string intval = String.Empty;
|
string intval = String.Empty;
|
||||||
string strval = String.Empty;
|
string strval = String.Empty;
|
||||||
@ -79,11 +89,7 @@ namespace MBS.Framework
|
|||||||
int realintval = Int32.Parse(intval);
|
int realintval = Int32.Parse(intval);
|
||||||
return new IntStringSplitterResult(realintval, strval);
|
return new IntStringSplitterResult(realintval, strval);
|
||||||
}
|
}
|
||||||
public static DoubleStringSplitterResult SplitDoubleStringParts(this string value)
|
public static DoubleStringSplitterResult SplitDoubleStringParts(this string value, int start = 0)
|
||||||
{
|
|
||||||
return SplitDoubleStringParts(value, 0);
|
|
||||||
}
|
|
||||||
public static DoubleStringSplitterResult SplitDoubleStringParts(this string value, int start)
|
|
||||||
{
|
{
|
||||||
string intval = String.Empty;
|
string intval = String.Empty;
|
||||||
string strval = String.Empty;
|
string strval = String.Empty;
|
||||||
@ -105,5 +111,27 @@ namespace MBS.Framework
|
|||||||
double realintval = Double.Parse(intval);
|
double realintval = Double.Parse(intval);
|
||||||
return new DoubleStringSplitterResult(realintval, strval);
|
return new DoubleStringSplitterResult(realintval, strval);
|
||||||
}
|
}
|
||||||
|
public static DecimalStringSplitterResult SplitDecimalStringParts(this string value, int start = 0)
|
||||||
|
{
|
||||||
|
string intval = String.Empty;
|
||||||
|
string strval = String.Empty;
|
||||||
|
|
||||||
|
int i = start;
|
||||||
|
for (i = start; i < value.Length; i++)
|
||||||
|
{
|
||||||
|
if (value[i] == '.' || (value[i] >= '0' && value[i] <= '9'))
|
||||||
|
{
|
||||||
|
intval += value[i];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
strval = value.Substring(i);
|
||||||
|
|
||||||
|
decimal realintval = Decimal.Parse(intval);
|
||||||
|
return new DecimalStringSplitterResult(realintval, strval);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user