Heim > Datenbank > Oracle > Hauptteil

Oracle-Entfernungszeichenfolge

WBOY
Freigeben: 2023-05-11 10:24:07
Original
2554 Leute haben es durchsucht

In Oracle-Datenbanken ist es manchmal notwendig, einen bestimmten Teil einer Zeichenfolge zu entfernen, z. B. das Entfernen bestimmter Zeichen in einer Zeichenfolge, das Entfernen von Leerzeichen vor und nach einer Zeichenfolge usw. In diesem Artikel erfahren Sie, wie Sie Zeichenfolgen in Oracle entfernen.

  1. Angegebene Zeichen aus einer Zeichenfolge entfernen

In Oracle können Sie die REPLACE-Funktion verwenden, um bestimmte Zeichen aus einer Zeichenfolge zu entfernen. Mit der REPLACE-Funktion kann der Benutzer alle bestimmten Zeichen in einer Zeichenfolge durch eine andere Zeichenfolge ersetzen.

Die Syntax lautet wie folgt:

REPLACE(string, old_string, new_string)
Nach dem Login kopieren

Unter diesen ist string die zu ersetzende Zeichenfolge, old_string ist das zu ersetzende Zeichen und new_string ist das ersetzte Zeichen.

Um beispielsweise das Zeichen „c“ aus der Zeichenfolge „abcde“ zu entfernen, können Sie die folgende Anweisung verwenden:

SELECT REPLACE('abcde', 'c', '') FROM dual;
Nach dem Login kopieren

Das Ausgabeergebnis der obigen Anweisung ist „abde“.

  1. Leerzeichen vor und nach einer Zeichenfolge entfernen

In Oracle können Sie die TRIM-Funktion verwenden, um Leerzeichen vor und nach einer Zeichenfolge zu entfernen. Die TRIM-Funktion kann zum Entfernen von Leerzeichen aus einer angegebenen Zeichenfolge oder zum Entfernen von Leerzeichen auf beiden Seiten einer Zeichenfolge verwendet werden.

Die Syntax lautet wie folgt:

TRIM([LEADING | TRAILING | BOTH] [trim_string] FROM string)
Nach dem Login kopieren

Unter diesen bedeutet LEADING das Entfernen von Leerzeichen auf der linken Seite, TRAILING das Entfernen von Leerzeichen auf der rechten Seite und BOTH das gleichzeitige Entfernen von Leerzeichen auf beiden Seiten. trim_string kann die zu entfernende Zeichenfolge angeben. Wenn nicht angegeben, werden Leerzeichen standardmäßig entfernt.

Um beispielsweise die Leerzeichen vor und nach der Zeichenfolge „abcde“ zu entfernen, können Sie die folgende Anweisung verwenden:

SELECT TRIM('   abcde  ') FROM dual;
Nach dem Login kopieren

Das Ausgabeergebnis der obigen Anweisung ist „abcde“.

  1. Buchstaben und Zahlen aus einer Zeichenfolge entfernen

In Oracle können Sie die Funktion REGEXP_REPLACE verwenden, um Buchstaben und Zahlen aus einer Zeichenfolge zu entfernen. Mit dieser Funktion kann der Benutzer Zeichen in einer Zeichenfolge durch reguläre Ausdrücke ersetzen.

Die Syntax lautet wie folgt:

REGEXP_REPLACE(string, pattern, '')
Nach dem Login kopieren

Unter diesen ist string die zu ersetzende Zeichenfolge, pattern der zu vergleichende reguläre Ausdruck und der dritte Parameter ist das ersetzte Zeichen. Hier ist die leere Zeichenfolge.

Um beispielsweise alle Buchstaben und Zahlen in der Zeichenfolge „a1b2c3d4e5“ zu entfernen, können Sie die folgende Anweisung verwenden:

SELECT REGEXP_REPLACE('a1b2c3d4e5', '[[:alpha:][:digit:]]', '') FROM dual;
Nach dem Login kopieren

Das Ausgabeergebnis der obigen Anweisung ist „“.

  1. Chinesische Zeichen aus einer Zeichenfolge entfernen

In Oracle können Sie die Funktionen NLSSORT und REGEXP_REPLACE verwenden, um chinesische Zeichen aus einer Zeichenfolge zu entfernen.

Die Syntax lautet wie folgt:

Nach dem Login kopieren
Nach dem Login kopieren

Um beispielsweise chinesische Zeichen in der Zeichenfolge „abc Chinese def“ zu entfernen, können Sie die folgende Anweisung verwenden:

Nach dem Login kopieren
Nach dem Login kopieren

Das Ausgabeergebnis der obigen Anweisung ist „abcdef“.

  1. HTML-Tags aus Zeichenfolgen entfernen

In Oracle können Sie die Funktion DBMS_XMLGEN und die Funktion REGEXP_REPLACE verwenden, um HTML-Tags aus Zeichenfolgen zu entfernen.

Die Syntax lautet wie folgt:

REGEXP_REPLACE(DBMS_XMLGEN.getXMLType(string).getStringVal(), '<[^>]+>', '')
Nach dem Login kopieren

Dabei ist string der zu ersetzende String, DBMS_XMLGEN.getXMLType(string).getStringVal() konvertiert den String in den XMLType-Typ, <1+> ein regulärer Ausdruck, der mit allen HTML-Tags übereinstimmt.

Um beispielsweise alle Tags in der folgenden HTML-Zeichenfolge zu entfernen:

<body>
  <div class="container">
    <h1>Hello world!</h1>
    <p>This is a paragraph.</p>
  </div>
</body>
Nach dem Login kopieren

können Sie die folgende Anweisung verwenden:

SELECT REGEXP_REPLACE(DBMS_XMLGEN.getXMLType('<body><div class="container"><h1>Hello world!</h1><p>This is a paragraph.</p></div></body>').getStringVal(), '<[^>]+>', '') FROM dual;
Nach dem Login kopieren

Die Ausgabe der obigen Anweisung lautet „Hallo Welt! Dies ist ein Absatz.“

Zusammenfassung

Dieser Artikel stellt vor, wie man Strings in Oracle entfernt. Ob es darum geht, bestimmte Zeichen, Leerzeichen, Buchstaben und Zahlen, chinesische Schriftzeichen oder HTML-Tags zu entfernen, Oracle stellt entsprechende Funktionen und reguläre Ausdrücke bereit. Ich glaube, dass Leser je nach Situation in der Praxis eine Auswahl treffen und anwenden können.


  1. >

Das obige ist der detaillierte Inhalt vonOracle-Entfernungszeichenfolge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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