我正在使用像这样的jquery将文本注入页面
$("#myDiv").text(someWebServiceResponse.Data);
此返回的数据在大多数情况下是用逗号分隔的数字,但在某些情况下可以是 字符串作为标题,后跟数字
没有标题的返回数据案例
1,2,3,4,89,11
带标题的返回数据案例
MyTitle 1,2,3,4,89,11
带标题的返回数据案例
MyTitle2 1,2,35,4,89,14
这些标题和数字值是动态的。
如何识别返回的数据是否包含标题(可能使用typeofstring
)和
修改此返回的字符串,标题为+ +,而不是下一行中的数字
答案 0 :(得分:1)
鉴于数字仅由,
而不是空格分割,您可以轻松测试字符串是否包含空格。
喜欢这个
function containsTitle(input) {
return input.indexOf(' ') > 0;
}
...
if (containsTitle(someWebServiceResponse.Data)) {
//TODO: split for 2 lines or whatever you need
}
答案 1 :(得分:1)
使用引用的示例,只需查找最后一个空格(如果有)并插入加号:
var lastSpace = yourString.lastIndexOf(' ');
if (lastSpace != -1) {
yourString = yourString.substring(0, lastSpace) + " +" + yourString.substring(lastSpace);
}
直播示例:
test("1,2,3,4,89,11");
test("MyTitle 1,2,3,4,89,11");
test("MyTitle2 1,2,35,4,89,14");
function test(yourString) {
var lastSpace = yourString.lastIndexOf(' ');
if (lastSpace != -1) {
yourString = yourString.substring(0, lastSpace) + " +" + yourString.substring(lastSpace);
}
snippet.log(yourString);
}

<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
&#13;
答案 2 :(得分:1)
试试这个: -
var isTitle=function(txt){
var first=txt.substr(0,txt.indexOf(','));
return !$.isNumeric(first);
}
//here how to use
alert(isTitle('1,2,3,4,89,11'));
alert(isTitle('MyTitle 1,2,3,4,89,11'));