Ich möchte die Ziffern aus einer Zeichenfolge extrahieren, die Zahlen und Buchstaben enthält:
"In My Cart : 11 items"
Ich möchte die Nummer extrahieren 11
.
Ich möchte die Ziffern aus einer Zeichenfolge extrahieren, die Zahlen und Buchstaben enthält:
"In My Cart : 11 items"
Ich möchte die Nummer extrahieren 11
.
Ich habe nicht das Verdienst daran, aber ich muss es einfach teilen. Diese Regex wird Zahlen aus einer Zeichenkette, einschließlich Dezimalpunkte / Stellen, sowie Kommas:
/((?:[0-9]+,)*[0-9]+(?:\.[0-9]+)?)/
Zitiert von hier:
php - regex - wie extrahiert man eine Zahl mit Dezimalzeichen (Punkt und Komma) aus einem String (z.B. 1.120,01)?
Sie können verwenden preg_match :
$s = "In My Cart : 11 items";
preg_match("|\d+|", $s, $m);
var_dump($m);
<?php
var $string = "In My Cart : 11 items";
?>
filter_var
- Filtert eine Variable mit einem angegebenen Filter<?php
filter_var($string, FILTER_SANITIZE_NUMBER_INT); // string(2) "11"
?>
str_replace
- Alle Vorkommen des Suchstrings durch den Ersetzungsstring ersetzen<?php
str_replace(array('In My Cart : ',' item', 's'),"", $string); // string(2) "11"
?>
preg_replace
- Suchen und Ersetzen mit einem regulären Ausdruck<?php
preg_replace("/[^0-9]/","",$string); // string(2) "11"
?>
str_replace
verursachen Geschwindigkeit, aber auch begrenzte Anwendungsfällepreg_replace
ist viel vielseitiger als str_replace
o filter_var
preg_replace_callback
preg_replace_callback
kann mehrere Ersetzungen in einem Aufruf vornehmenfilter_var
beschränkt auf Sanierungsmöglichkeiten使用方法 preg_replace
$str = 'In My Cart : 11 12 items';
$str = preg_replace('/\D/', '', $str);
echo $str;
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.