2016-04-16 9 views
0

Ich bin neu im Bereich der Big Data und begann gerade, Dinge zu lernen. Ich habe eine Tweets-Tabelle im Bienenstock und in seinem Textfeld enthalten viele Datensätze Hyperlinks. Ich möchte diese Hyperlinks entfernen, aber ich kann das nicht tun. Da charindex und andere sql-Funktionen zu diesem Zweck nicht im Bienenstock unterstützt werden, konnte ich auch nach vielen Suchvorgängen keine Anhaltspunkte finden. Ich habe versucht, es mit regexp_replace zu tun, aber es gibt mir 'Index außerhalb des Bereichs' Fehler, was bedeutet, dass ich nicht die richtige Regexp schreiben. Hier ist meine Abfrage SELECT text, regexp_replace (text, '(https.*)', '') FROM tweets; jede Hilfe wäre willkommen.entfernen Sie Hyperlinks von Tweets mit Bienenstock

Antwort

0

regexp_replace ist ein geeigneter Ansatz, aber Ihr regulärer Ausdruck würde als "ersetzt alles nach dem ersten Auftreten von https mit einer leeren Zeichenfolge" interpretiert werden. In diesem Fall benötigen Sie die Klammer nicht, und Ihr Regexp-Muster muss das Muster der URL, die Sie entfernen möchten, vollständiger definieren, indem Sie wahrscheinlich nach dem ersten Leerzeichen nach https suchen. Beachten Sie, dass Regexps standardmäßig "gierig" sind, so dass ein Muster wie (mit einem Leerzeichen nach dem .*) nach der längsten Zeichenfolge in text sucht. Beginnen mit http Sand endet mit einem Leerzeichen. Ändern Sie dies durch Hinzufügen eines? zum Wildcard-Muster, wie https.*?. Denken Sie auch daran, dass die URL in allen Fällen keinen Platz am Ende haben darf, möglicherweise auch nicht https, aber sicherlich auch eine //:. Verwenden Sie eine Website wie ein Rubular, um an Ihrer Regexp zu arbeiten, und fügen Sie sie dann Ihrer Abfrage hinzu, wenn Sie damit arbeiten.

Schließlich ist es wahrscheinlich, dass Sie nicht einen Raum nach der Funktion, so dass statt regexp_replace (... tun regexp_replace(...

+0

danke, mit dem zur Verfügung gestellt Rubular Bezug setzen sollte ich in der Lage war meine regulären Ausdruck zu verfeinern und entfernt erfolgreich die Hyperlinks. –