J'ai une entrée de ce type, par exemple:Retirez le texte avant la barre par méthode replace()
Guerre Stellari/Star Wars (1977)
la sortie doit être:
Star Wars (1977)
comment puis-je obtenir l'aide de la remplacer la méthode?
J'ai une entrée de ce type, par exemple:Retirez le texte avant la barre par méthode replace()
Guerre Stellari/Star Wars (1977)
la sortie doit être:
Star Wars (1977)
comment puis-je obtenir l'aide de la remplacer la méthode?
Vous pouvez essayer ceci:
'Guerre Stellari/Star Wars (1977)'.replace(/.*?\/\s+/, '')
Mais serait plus facile:
'Guerre Stellari/Star Wars (1977)'.split('/')[1]
Plus fiable:
'Guerre Stellari/Good/Bad (1929)'.split('/').slice(1).join('/').trim()
Que se passe-t-il lorsque la chaîne est' Guerre Stellari/Good/Bad (1929) '? – Nisarg
@NisargShah même: var x = 'Guerre Stellari/Star Wars (1977)'. Split ('/'), z = x [0]; w = x [1], y = x [2] –
@Danil Vous avez corrigé le premier exemple, mais le second renvoie toujours la mauvaise réponse. – Nisarg
Vous pouvez le faire en utilisant la méthode substring
.
var str = 'Guerre Stellari/Star Wars (1977)';
console.log(str.substring(str.indexOf('/') + 1).trim());
Essayez ceci: /[^/]+$/
Le^dans un groupe dit "correspondre toutes les chartes pas dans ce groupe". Donc, faites correspondre tous les caractères qui ne sont pas des barres obliques /
jusqu'à la fin de la ligne $.
Voici une course sèche de /[^/]+$/
contre "Guerre Stellari/Star Wars (1977)" .
https://regex101.com/r/bSzRr7/1
Pourquoi 'replace'? 'substring' est probablement plus facile dans cet exemple –
@NickA Oui, mais je dois utiliser le remplacement – Felix