Heim > Web-Frontend > js-Tutorial > Wie erhalte ich die Zeichenfolge zwischen geschweiften Klammern mithilfe des regulären Ausdrucks von JavaScript?

Wie erhalte ich die Zeichenfolge zwischen geschweiften Klammern mithilfe des regulären Ausdrucks von JavaScript?

PHPz
Freigeben: 2023-08-23 08:41:07
nach vorne
1686 Leute haben es durchsucht

Wie erhalte ich die Zeichenfolge zwischen geschweiften Klammern mithilfe des regulären Ausdrucks von JavaScript?

Wir können einen regulären Ausdruck erstellen, damit er alle Teilzeichenfolgen zwischen geschweiften Klammern finden kann. Danach können wir die Methode exec() oder match() verwenden, um den passenden Teilstring zu extrahieren.

In diesem Tutorial lernen wir, reguläre Ausdrücke in JavaScript zu verwenden, um die Zeichenfolge zwischen geschweiften Klammern abzurufen. Wenn wir beispielsweise eine Zeichenfolge wie „Dies ist eine {Zeichenfolge} mit {geschweiften} Klammern haben, müssen wir alle Teilzeichenfolgen extrahieren, die sich zwischen den geschweiften Klammern befinden.

Verwenden Sie die Methode exec() mit regulären Ausdrücken, um die Zeichenfolge zwischen geschweiften Klammern abzurufen

Die Methode exec() wird normalerweise mit regulären Ausdrücken verwendet, um passende Teilzeichenfolgen zu finden. Es gibt alle übereinstimmenden Ergebnisse im Array-Format zurück oder null, wenn keine Übereinstimmung gefunden wird.

Grammatik

Benutzer können der folgenden Syntax folgen, um die Methode exec() mit dem regulären Ausdruck zu verwenden, um alle Teilzeichenfolgen zwischen den geschweiften Klammern abzurufen

var regex = /{([^}]+)}/g;
while (match = regex.exec(originalStr)) {
   results.push(match[1]);
}
Nach dem Login kopieren

In der obigen Syntax haben wir einen regulären Ausdruck erstellt, um die Teilzeichenfolge zwischen geschweiften Klammern zu finden. Anschließend durchlaufen wir das Array „matches“ und erhalten alle passenden Vorkommen.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Die Variable „originalStr“ enthält die Zeichenfolge mit geschweiften Klammern im Beispiel unten. Die Methode regex.exec() gibt ein zweidimensionales Array aller passenden Teilzeichenfolgen zurück. Jedes Element des Arrays ist ein Array, das zwei Zeichenfolgen enthält. Das erste Element ist die Zeichenfolge mit geschweiften Klammern und das zweite Element ist die Zeichenfolge ohne geschweifte Klammern, die wir extrahieren möchten.

In der Ausgabe kann der Benutzer beobachten, dass die Teilzeichenfolgen „Entwickler“ und „JavaScript“ angezeigt werden, da sie beide in geschweiften Klammern stehen.

<html>
<body>
   <h3>Using the <i> regular expression and exec() method </i> to get string between curly braces in JavaScript</h3>
   <div id = "demo"> </div>
   <script>
      let output = document.getElementById("demo");
      function getStringBetweenBraces() {
         var originalStr = "Hello {Developers}! Let's develop {JavaScript} code!";
         var found = [];
         var regex = /{([^}]+)}/g;
         var results = [];
         let match;
         while (match = regex.exec(originalStr)) {
            results.push(match[1]);
         }
         output.innerHTML = "The original string is " + originalStr + "<br>";
         output.innerHTML += "The substrings between curly braces are " + results + "<br>";
      }
      getStringBetweenBraces();
   </script>
</body>
</html>
Nach dem Login kopieren

Verwenden Sie die match()-Methode mit regulären Ausdrücken, um die Zeichenfolge in geschweiften Klammern abzurufen

Die Methode

match() gibt außerdem alle übereinstimmenden Vorkommen in der Zeichenfolge im Array-Format zurück.

Grammatik

Benutzer können die Methode match() und reguläre Ausdrücke gemäß der folgenden Syntax verwenden, um die Zeichenfolge zwischen geschweiften Klammern abzurufen

let results = originalStr.match(/{([^}]+)}/g); 
Nach dem Login kopieren

In der obigen Syntax ist originalStr eine Zeichenfolge mit geschweiften Klammern, und wir übergeben den regulären Ausdruck als Parameter der match()-Methode.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Im folgenden Beispiel gibt die Methode match() ein Array von Zeichenfolgen mit geschweiften Klammern zurück. Allerdings wird die Zeichenfolge nach dem Entfernen der geschweiften Klammern nicht zurückgegeben. Benutzer können die Methode subStr() oder substring() verwenden, um geschweifte Klammern aus den zurückgegebenen Ergebnissen zu entfernen.

<html>
<body>
   <h3>Using the <i> regular expression and match() method </i> to get string between curly braces in JavaScript</h3>
   <div id = "demo"> </div>
   <script>
      let output = document.getElementById("demo");
      function getStringBetweenBraces() {
         var originalStr = "This is {sample} string! This is {original} string!";
         let results = originalStr.match(/{([^}]+)}/g); 
         output.innerHTML = "The original string is " + originalStr + "<br>";
         output.innerHTML += "The substrings between curly braces are " + results + "<br>";
      }
      getStringBetweenBraces();
   </script>
</body>
</html>
Nach dem Login kopieren

Verwenden Sie eine for-Schleife, um die Zeichenfolge zwischen geschweiften Klammern zu erhalten

Wir können auch alle Teilzeichenfolgen zwischen den geschweiften Klammern extrahieren, indem wir die Zeichenfolge mithilfe einer for-Schleife iterieren. Wir können den Anfangs- und Endindex der geschweiften Klammern verfolgen. Anschließend können wir den Teilstring mit der Methode substring() aus dem Originalstring extrahieren.

Grammatik

Benutzer können die for-Schleife gemäß der folgenden Syntax verwenden, um die Teilzeichenfolge zwischen geschweiften Klammern zu extrahieren.

for ( ) {
   if (str[i] == "{")
   start = i;
   if (str[i] == "}") {
      end = i;
      let bracesString = str.substring(start + 1, end);
   }
}   
Nach dem Login kopieren

In der obigen Syntax verfolgen wir den Anfangs- und Endindex der geschweiften Klammern und extrahieren die Zeichenfolge mit der Methode substring().

Schritte

Schritt 1 – Verwenden Sie eine for-Schleife, um die Zeichenfolge zu durchlaufen.

Schritt 2 – Wenn das Zeichen mit dem Index „I“ in der Zeichenfolge gleich „{“ ist, speichern Sie den Wert des Index in der Startvariablen.

Schritt 3 – Wenn das Zeichen mit dem Index „I“ in der Zeichenfolge gleich „}“ ist, speichern Sie den Wert des Index in der Endvariablen.

Schritt 3.1 - Verwenden Sie die Methode substring(), um die Teilzeichenfolge zwischen dem Index „Start + 1“ und dem Index „Ende“ abzurufen.

Schritt 3.2 – Schieben Sie den resultierenden Teilstring in ein Array.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Im folgenden Beispiel haben wir die obigen Schritte ausgeführt, um die Zeichenfolge zwischen geschweiften Klammern mithilfe einer for-Schleife zu extrahieren. Diese Methode funktioniert jedoch nicht zum Extrahieren von Zeichenfolgen zwischen verschachtelten geschweiften Klammern.

<html>
<body>
   <h3>Using the <i> for loop </i> to get string between curly braces in JavaScript</h3>
   <div id = "demo"> </div>
   <script>
      let output = document.getElementById("demo");
      function getStringBetweenBraces() {
         var str = "Hello {Users}! Welcome to {Website}!";
         var start = 0;
         var end = 0;
         let results = [];
         for (var i = 0; i < str.length; i++) {
            if (str[i] == "{") {
               start = i;
            }
            if (str[i] == "}") {
               end = i;
               let bracesString = str.substring(start + 1, end);
               results.push(bracesString);
            }
         }
         output.innerHTML = "The original string is " + str + "<br>";
         output.innerHTML += "The substrings between curly braces are " + results + "<br>";
      }
      getStringBetweenBraces();
   </script>
</body>
</html> 
Nach dem Login kopieren

In diesem Tutorial haben wir gelernt, wie man die Zeichenfolge zwischen geschweiften Klammern mithilfe regulärer Ausdrücke extrahiert. In der ersten Methode haben wir die Methode exec() mit einem regulären Ausdruck verwendet; in der zweiten Methode haben wir die Methode match() mit einem regulären Ausdruck verwendet.

Bei der dritten Methode haben wir eine for-Schleife anstelle regulärer Ausdrücke verwendet.

Das obige ist der detaillierte Inhalt vonWie erhalte ich die Zeichenfolge zwischen geschweiften Klammern mithilfe des regulären Ausdrucks von JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage