Разбиение строки на числа и текст - PullRequest
0 голосов
/ 30 декабря 2011

У меня есть строка, которая выглядит как Temperature is 125 или Temperature is 4

Строки всегда имеют одинаковый формат, то есть число всегда встречается в конце строки.

Мне нужно разбить эти строки там, где встречаются числа, поэтому у меня останутся две строки, например

string1 = Temperature is
string2 = 125

Есть идеи, как мне это сделать?

Ответы [ 4 ]

5 голосов
/ 30 декабря 2011

Использование регулярного выражения:

var matches = "Temperature is 125".match(/^(.*) (\d+)$/);
console.log(matches[1]); // Temperature is
console.log(matches[2]); // 125
1 голос
/ 30 декабря 2011

Если элемент в конце - это просто элемент после последнего пробела в строке, вы можете использовать .lastIndexOf, например

var s='Some text part   1234';
var splitAt = s.lastIndexOf(' ');
document.write('Text = &quot;' + s.substring(0, splitAt) + '&quot;<br />Number = &quot;' + s.substring(splitAt+1) + '&quot;');
1 голос
/ 30 декабря 2011

Вот очень простой способ для вас.

var text = "Temperature is (125)";
var result = text.lastIndexOf(" ");
var number = text.substring(result,text.length);
var textBody = text.substring(0,result);

Просто проверьте, можете ли вы использовать это. Вы должны предположить, что всегда число (с или без скобок) является последним словом.

ура!

0 голосов
/ 30 декабря 2011

Если вы знаете, что строка всегда Temperature is XX, вы можете сделать

var str1 = theString.substr(0, 14);
var str2 = theString.substr(15);

РЕДАКТИРОВАТЬ: Ой, это вопрос javacript, а не Java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...