Wir haben ein Feld in einer Datenbank (eine Laravel 5,4-Stelle), die Zellen mit Daten wie diese hat:PHP/Laravel Wählen Sie Text in Klammern nach bestimmten Anzahl
"123(Description of 123) 124(Description of 124) 125(Description of 125)"
Alle in einer langen Reihe. Ich muss den eckigen Text ausgeben, aber nur die angegebene Nummer. Übergeben Sie beispielsweise die Zahl 123 als Parameter, und die Beschreibung von 123 wird zurückgegeben.
Ich habe das RegexMuster mit preg_match zu verwenden, die die Daten aus den Klammern extrahieren:
$sTest = "247(text goes here)248(more here)";
preg_match("/\(([^\)]*)\)/", $sTest, $aMatches);
$sResult = $aMatches[1];
Aber ich weiß nicht, wie PHP anweisen, die speziellen Klammern nach einer bestimmten Anzahl zu lesen.
Hat jemand bitte irgendwelche Vorschläge? Vielen Dank im Voraus!
Klingt für mich wie eine große Datenbank Design Error. Vielleicht sollten Sie sich kurz eine Anleitung zum Entwerfen einer relationalen Datenbank ansehen. – RiggsFolly
Warum nicht einfach als Teil des Musters weitergeben? Wie 'preg_match ("/\ b ". $ Id." \ (([^)] *) \)/", $ STest, $ aMatch);'? –
Sie müssen Ihre Daten in JSON String –