Я хочу получить целочисленное значение в строке. Любые приговоры?
Возьмите это в качестве примера.Как получить число в строке?
768 - Hello World
Согласно предыдущей строке я хочу, чтобы получить 768 переменные. Как это сделать?
Я хочу получить целочисленное значение в строке. Любые приговоры?
Возьмите это в качестве примера.Как получить число в строке?
768 - Hello World
Согласно предыдущей строке я хочу, чтобы получить 768 переменные. Как это сделать?
Int32.Parse(Regex.Match(some_string, @"\d+").Value);
some_string представляет собой переменную, которая представляет собой тип данных строки. Регулярное выражение вернет первое число, с которого начинается слева. В вашем примере это 768. Если some_string содержит «привет 768" , он все равно будет возвращать 768.
Если вы хотите сделать без использования регулярных выражений, вы можете сделать это с помощью простых петель
public string GetFirstNumber(string some_string) {
if (string.IsNullOrEmpty(some_string)) {
return string.Empty; // You could return null to indicate no data
}
StringBuilder sb = new StringBuilder();
bool found = false;
foreach(char c in some_string){
if(Char.IsDigit(c)){
sb.Append(c);
found = true;
} else if(found){
// If we have already found a digit,
// and current character is not a digit, stop looping
break;
}
}
return sb.ToString();
}
Разделить по пространству и взять первый элемент. Разделите его как целое.
string str = "768 - Hello World";
int i = Int32.Parse(str.Split(' ').First());
public int GetLeadingIntegerFromString(string myString)
{
if (string.IsNullOrWhiteSpace(myString))
return;
var parts = myString.Split('-');
if (parts.Length < 1)
return;
var number = int.Parse(parts[0].Trim());
return number;
}
Итак, вы хотите взять '768' из' 768 - Hello World', это простой вопрос, вы пробовали что-нибудь, даже быстрый поиск? –
Будет ли целое всегда быть в начале? Что делать, если есть два целых числа Как насчет '5.5 - Hello World'? Будет ли всегда следовать номер за' - '? Как вы выбираете извлечение числовой части строки, будет очень сильно зависеть от того, какие данные вам нужно обрабатывать. Вы * можете * хотеть используйте регулярные выражения n, или это может быть так же просто, как найти подстроку перед первым пространством. –
Это формат, который я получаю всегда, и не будет десятичных знаков. Есть пробелы между целым числом и тире, а также между тире и строкой – Mike