Ich versuche, eine Regex-Ausdruck in MySQL von einem Perl-Programm zu schreiben. Ich mag Abfrage haben, wie dies:Warum interpoliert meine Variable nicht korrekt, wenn ich eine Mysql-Abfrage erstelle?
WHERE a.keywords REGEXP '[[:<:]]something[[:>:]]'
jedoch in Perl, wenn ich diese Abfrage ich Störung erhalte, wenn verketten:
for($i=0;$i<$count;$i++){
$where = $where . "'[[:<:]]$andkeywords[$i][[:>:]]' "; #errors
Wo, wie dies mir nicht gibt einen Fehler:
for($i=0;$i<$count;$i++){
$where = $where . "'[[:<:]] $andkeywords[$i] [[:>:]]' "; #no error
In der 'no error' Code beachten, dass es zusätzliche Leerzeichen gibt. Aber wenn ich extra Leerzeichen habe, dann bekomme ich nicht die resuls, die ich will, weil es in der DB keine 'extra spaces' gibt.
Es ist immer hilfreich, um
Oder vielleicht vereinfacht werden, um die Fehler in der Nachricht enthalten. :) –