2017-03-08 1 views
2

ich habe:Verwenden Sie mehrere Befehle in einem RegExp (JS)

var myText = <"input"> 

ich die Zeichenfolge auf nur Eingang schneiden möchten. Ist es möglich einen regulären Ausdruck zu definieren, was macht das? Ich weiß, wie der < "

myText = myText.replace(/<"/,g,'') 

Aber was ist mit dem Ende der Leitung, um loszuwerden Natürlich konnte ich nur einen anderen regulären Ausdruck schreiben, wie folgt aus:?

myText = myText.replace(/<"/,g,'').replace(/">/,g,'') 

Aber ich bin sicher, dass es ein einfacher Weg ist, richtig :)

Antwort

1

Verwendung regulärer Ausdruck,

var myText = "<input>"; 
myText.replace(/^<"|">$/g, '') 
1

Stattdessen können Sie .match() Methode verwenden:

1

der Sequenz beginnen oder enden Spiele kann man eine character class [] verwenden Sie einen der vorliegenden Zeichen angeben:

var myText = '<input>'; 
 
console.log(myText.replace(/[<>]/g, ''));

Wenn Sie nicht alphanumerische Zeichen ersetzen möchten, können Sie tun:

var myText = '<input>'; 
 
console.log(myText.replace(/[^a-zA-Z0-9]/g, ''));

1

Sie können wie folgt tun:

var myText = '<input>'; 
myText.replace(/<(.*)>/, '$1'); 

Oder

myText.match(/<(.*)>/)[1] 
1
var myText = "<input>"; 
console.log(myText.replace(/(^<)|(>$)/g, ''); 
+0

Danke . Nehmen wir an, ich habe ein "/", das ich entfernen möchte. Warum funktioniert der folgende Code nicht? var myText = ""; console.log (myText.replace (/ (^ <)|(/> $)/g, ''); – Faizy

+1

/(^ <)|(\/*> $)/g –

+0

Danke! Copuld Sie erklären, was das "\" tut? @Choo Hwan – Faizy