2017-09-24 45 views
-3

我有這種類型的輸入,例如:斜線前刪除文本由replace()方法

Guerre Stellari/Star Wars (1977) 

輸出應該是:

Star Wars (1977) 

它使用我怎麼弄replace()方法?

+1

爲什麼'replace'預演? 'substring'在這個例子中可能更容易 –

+0

@NickA是的,但我需要使用替換 – Felix

回答

3

你可以試試這個:

'Guerre Stellari/Star Wars (1977)'.replace(/.*?\/\s+/, '') 

但更容易將是:

'Guerre Stellari/Star Wars (1977)'.split('/')[1] 

更可靠:

'Guerre Stellari/Good/Bad (1929)'.split('/').slice(1).join('/').trim() 
+0

當字符串是'Guerre Stellari/Good/Bad(1929)'時會發生什麼? – Nisarg

+0

@NisargShah same:var x ='Guerre Stellari/Star Wars(1977)'。split('/'),z = x [0]; w = x [1],y = x [2] –

+0

@Danil你已經修正了第一個例子,但第二個例子仍然返回錯誤的答案。 – Nisarg

0

你可以做到這一點使用方法substring

var str = 'Guerre Stellari/Star Wars (1977)'; 
 

 
console.log(str.substring(str.indexOf('/') + 1).trim());

0

試試這個:/[^/]+$/

的^一組寫着 「匹配所有的章程在這組」。因此,將所有不是斜線/的字符都匹配到$行的末尾。

這裏是/[^/]+$/"Guerre Stellari/Star Wars (1977)" . https://regex101.com/r/bSzRr7/1