Ich habe den folgenden CodeExtract Schlüsselwörter/Tags aus Zeichenfolge mit preg_match_all
$str = "keyword keyword 'keyword 1 and keyword 2' another 'one more'".'"another keyword" yes,one,two';
preg_match_all('/"[^"]+"|[^"\' ,]+|\'[^\']+\'/', $str, $matches);
echo "<pre>"; print_r($matches); echo "</pre>";
Wo ich es will Schlüsselwörter aus einer Zeichenfolge extrahieren und zusammen halten diejenigen, eingewickelt in einfachen oder doppelten Anführungszeichen, diese oben genannte Code OK funktioniert , aber es gibt die Werte mit den Anführungszeichen zurück. Ich weiß, dass ich diese über str_replace oder ähnliches entfernen kann, aber ich suche wirklich nach einer Möglichkeit, dies über die Funktion preg_match_all zu lösen.
Ausgang:
Array
(
[0] => Array
(
[0] => keyword
[1] => keyword
[2] => 'keyword 1 and keyword 2'
[3] => another
[4] => 'one more'
[5] => "another keyword"
[6] => yes
[7] => one
[8] => two
)
)
Außerdem glaube ich, meine regex ein wenig kitschig sein, also irgendwelche Vorschläge für eine bessere wäre würde :)
Irgendwelche Vorschläge/Hilfe geschätzt würde sehr gut sein.
Was ist so etwas wie 'a, "b", c, d, "e"' oder ' "b '"'" c'' – Gumbo