我有这样的内容的javascript字符串:
" xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy "
如何从我的字符串中提取 yyyyy?注意我想获取最后一个“:”和字符串结尾之间的文本。
我有这样的内容的javascript字符串:
" xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy "
如何从我的字符串中提取 yyyyy?注意我想获取最后一个“:”和字符串结尾之间的文本。
您可以使用String.prototype.split()
并获取结果数组中的最后一个:
var a = " xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy ".split(':');
console.log(a[a.length - 1]); // " yyyyyyyyyyyyyyyyy "
你可以使用这样的正则表达式:
/:\s*([^:]*)\s*$/
这将匹配一个文字:
,后跟零个或多个空白字符,后跟零个或多个除 :
1 组中捕获的任何字符,后跟零个或多个空白字符和字符串的结尾。
例如:
var input = " xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy ";
var output = input.match(/:\s*([^:]*)\s*$/)[1];
console.log(output); // "yyyyyyyyyyyyyyyyy"
var s = " xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy "
s.substring(s.lastIndexOf(':')+1)
您可以使用以下string.lastIndexOf()
方法:
var text = " xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy ";
var index = text.lastIndexOf(":");
var result = text.substring(index + 1); // + 1 to start after the colon
console.log(result); // yyyyyyyyyyyyyyyyy
var str=" xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy "
var arr=new Array(); arr=str.split(":");
var output=arr[arr.length-1];
var s=" xxxxxxx -errors follow: xxxxxxxxx failed validation xxxxx : yyyyyyyyyyyyyyyyy "
s= s.substr(s.lastIndexOf(':')+1);