Heim  >  Artikel  >  Backend-Entwicklung  >  Regulärer PHP-Ausdruck in Aktion: passende Preise

Regulärer PHP-Ausdruck in Aktion: passende Preise

王林
王林Original
2023-06-23 08:07:531608Durchsuche

Beim Online-Einkauf stoßen wir häufig auf Situationen, in denen wir Preise filtern müssen. Derzeit müssen wir reguläre Ausdrücke verwenden, um die Preise abzugleichen. In diesem Artikel erfahren Sie, wie Sie reguläre PHP-Ausdrücke verwenden, um die Preisanpassungsfunktion zu implementieren.

Zuerst müssen wir die Merkmale des Preises verstehen, den wir anpassen möchten. Im Allgemeinen ist das Preisformat in die folgenden Typen unterteilt:

  1. Ganzzahliger Preis, z. B. 99 Yuan, 1.000 Yuan usw.
  2. Preis mit Dezimalpunkt, z. B. 99,99 Yuan, 888,88 Yuan usw.
  3. Preis mit Dezimalpunkt und Einheit, z. B. 99,99 Yuan/Flasche, 666,66 Yuan/Stück usw.

Als nächstes können wir diese Preise über reguläre Ausdrücke abgleichen.

Für den ersten ganzzahligen Preis können wir den folgenden regulären Ausdruck zum Abgleichen verwenden:

preg_match("/d+元/", $str, $match);

Unter diesen steht d für übereinstimmende Zahlen, + für ein- oder mehrmals übereinstimmende Zahlen und Yuan für übereinstimmende Zahlen mit dem Wort „元“. $str ist die zu vergleichende Zeichenfolge, $match ist das Übereinstimmungsergebnis.

Für den zweiten Preistyp mit einem Dezimalpunkt können wir den folgenden regulären Ausdruck zum Abgleichen verwenden:

preg_match("/d+.d+元/", $str, $match);

Darunter bedeutet .d+ den Abgleich von Dezimalpunkten und Zahlen, und d+ muss vorangestellt werden, um sicherzustellen, dass der Zahlen vor dem Dezimalpunkt werden abgeglichen. $str ist die zu vergleichende Zeichenfolge, $match ist das Übereinstimmungsergebnis.

Für den dritten Preistyp mit Dezimalpunkt und Einheit können wir den folgenden regulären Ausdruck zum Abgleichen verwenden:

preg_match("/d+.d+元/.*/", $str, $match);

Unter diesen bedeutet d+.d+ den Abgleich der Zahlen vor und nach dem Dezimalpunkt, / bedeutet den Abgleich von Schrägstrichen, . * bedeutet, dass alle Zeichen danach durch Schrägstriche ersetzt werden. $str ist die zu vergleichende Zeichenfolge, $match ist das Übereinstimmungsergebnis.

Es ist zu beachten, dass es bei tatsächlichen Anwendungen zu Situationen kommen kann, in denen der Preis desselben Produkts in unterschiedlichen Einheiten angegeben wird, z. B. „99,99 Yuan/Flasche“ und „999,99 Yuan/Karton“. Zu diesem Zeitpunkt können wir das Symbol „|“ in regulären Ausdrücken verwenden, um mehrere Optionen abzugleichen. Zum Beispiel:

preg_match("/d+.d+元/(瓶|箱)/", $str, $match);

wobei das „|“-Symbol die Auswahl einer Übereinstimmung zwischen „Flasche“ und „Box“ bedeutet. $str ist die Zeichenfolge, die abgeglichen werden soll, $match ist das Ergebnis des Abgleichs.

Durch den Abgleich der oben genannten regulären Ausdrücke können wir Preise einfach filtern und extrahieren.

Abschließend muss daran erinnert werden, dass reguläre Ausdrücke zwar leistungsstark, aber auch komplex und fehleranfällig sind. Daher müssen wir in der tatsächlichen Anwendung reguläre Ausdrücke sorgfältig debuggen und testen, um sicherzustellen, dass wir die benötigten Ergebnisse genau erzielen können.

Ich hoffe, dieser Artikel kann jedem helfen, die Anwendung regulärer PHP-Ausdrücke besser zu beherrschen, damit wir beim Online-Einkauf leicht die Produkte finden können, die uns gefallen!

Das obige ist der detaillierte Inhalt vonRegulärer PHP-Ausdruck in Aktion: passende Preise. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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