2017-06-14 8 views
0

Wie Sie die Wörter zusammen mit den Leerzeichen mithilfe von Regex ignorieren. Sagen wir, ich möchte das Wort "Java Script" ignorieren. Lets sagen, ich habe folgende Daten in der Spalte einer Tabelle:Regex-Code, um durch Leerzeichen getrennte Wörter zu entfernen?

Core Java, python 
Java Script, c++ 
basic java, c 

Jetzt möchte ich einen regulären Ausdruck Code, der die Zeile mit dem Wort Java bewahrt aber die Zeile mit Wort „Java Script“ ignorieren. Ich habe folgenden Regex:

\b(?i)JAVA\b|\b(?i)JAVASE\b 

Dieser Regex erhält alle 3 Zeilen Daten. Wie ignoriere ich die zweite Zeile und bekomme eine andere 2 Zeile?

+1

In welcher Sprache verwenden Sie den Regex mit SQL? – Bergi

+0

Btw, es ist geschrieben * JavaScript *. Kein Platz, keine Probleme :-) – Bergi

+0

Eigentlich benutze ich Java Language .. In einer Spalte der Tabelle wird JavaScript als Java Script geschrieben und dadurch wird die Datenzeile im Ergebnis angezeigt. Aber ich möchte es ignorieren –

Antwort

0

Verwenden negative Vorschau: (?!) die folgenden " Script"

Pattern.compile("\\bJava\\b(?! Script)", Pattern.CASE_INSENSITIVE) 
0

Ich kann mir nicht vorstellen, wie Sie mit dieser seltsamen Anforderung endete, aber hier gehen Sie.

[A-Za-z ]+ava,[A-Za-z ]+\b 

Dieser Regex wählt die zwei Zeilen für Sie aus.

0

Versuche zu ignorieren:

^.*\bjava\b(?! \bscript\b).* 

Look für Wort java, aber nicht durch das Wort Skript

this Sie sehen, gefolgt habe auch eine Erklärung dort

Verwandte Themen