Si vous regardez le jsfiddle de question ,
var str = "Abc: Lorem ipsum sit amet";
str = str.substring(str.indexOf(":") + 1);
Cela retourne tous les caractères après le :
, comment puis-je régler cela pour retourner tous les caractères avant le :
quelque chose comme var str_sub = str.substr(str.lastIndexOf(":")+1);
mais cela ne fonctionne pas.
Et notez que le premier argument de subString est 0 basé tandis que le second est un.
Exemple:
String str= "0123456";
String sbstr= str.substring(0,5);
La sortie sera sbstr= 01234
et non sbstr = 012345
En général, une fonction pour renvoyer une chaîne après une sous-chaîne est
function getStringAfterSubstring(parentString, substring) {
return parentString.substring(parentString.indexOf(substring) + substring.length)
}
function getStringBeforeSubstring(parentString, substring) {
return parentString.substring(0, parentString.indexOf(substring))
}
console.log(getStringAfterSubstring('abcxyz123uvw', '123'))
console.log(getStringBeforeSubstring('abcxyz123uvw', '123'))