Details...
Grammatik filtern – Reguläre Ausdrücke in Filtern
Sie können reguläre Ausdrücke auf alle Filtervariablen anwenden, die den Datentyp „Zeichenkette“ haben.
Sie können zurückgeben, ob ein Regex mit /<regex>/.test(<variable>) übereinstimmt.
- /DF\d\d\d\d/.test(sample_name)// Gibt \"true\" zurück, wenn der Probenname der Ansicht mit dem Regex DF\d\d\d\d übereinstimmt.
Sie können auch eine Erfassungszeichenfolge verwenden und die erfasste Zeichenfolge mit einer anderen Zeichenfolge vergleichen: /<regex(capture)>/.extract(<variable>), die die erfasste Zeichenfolge zurückgibt.
- /DF(\d\d\d\d)/.extract(sample_name) = '1234'// Erfasst die vier Ziffern aus dem Regex und testet gegen '1234'.
Hinweis:
Die obigen Beispiele verwenden die Variable sample_name auf Ansichtsebene, die eine Zeichenfolge auswertet. Wenn Sie versuchen, eine Achsenvariable mit dem Datentyp „Zeichenkette“ zu verwenden, können diese Variablen einen Zeichenkettenvektor ausgeben, da es mehrere Instanzen der Achsenvariable innerhalb einer einzigen Ansicht geben kann. In diesem Fall muss der reguläre Ausdruck innerhalb des Achsenfilters angewendet werden, wie das Beispiel unten zeigt:
match[/FH\d\d\d\d/.test(feature_string)]// Für diesen Ausdruck wird der Regex für die feature_string jeder Übereinstimmung angewendet. Wenn eine der Übereinstimmungen mit feature_string dem Regex entspricht, wird die Ansicht eingeschlossen.
Das nächste Beispiel zeigt einen ungültigen regulären Filterausdruck:
/FH\d\d\d\d/.test (match/feature_string)// Der Ausdruck sollte wahr sein, wenn die Ansicht eine Übereinstimmung mit einer feature_string enthält, die dem Regex entspricht. Dies ist jedoch ungültig, da jede Ansicht mehrere Übereinstimmungen haben kann.
- Die Variable sets kann nicht in einem regulären Ausdruck verwendet werden.
Filterausdrücke schreiben
Filterausdrücke können Filter auf Ansichtsebene enthalten, bei denen die Variable sich auf die gesamte Ansicht bezieht.
- Dateiname ~ 'REJECT'// Gibt Ansichten zurück, in denen der Dateiname 'REJECT' enthält.
- count(feature) > 3// Gibt Ansichten mit mehr als drei Funktionen zurück.
Filterausdrücke können auch Achsenfilter enthalten, bei denen die einzelne Markierung oder das einzelne Label für jede Ansicht ausgewertet wird.
- Merkmal [Punktzahl > 0,5]// Gibt Ansichten mit einem Merkmal mit einer Punktzahl von mehr als 0,5 zurück.
Filter auf Ansichts- und auf Achsenebene können kombiniert werden.
- Dateiname ~ 'REJECT' und Merkmal [Score > 0,5 ]// Gibt Ansichten zurück, bei denen der Dateiname 'REJECT' und ein Merkmal mit einer Bewertung von mehr als 0,5 enthält.
Filter für mehrere Achsen können kombiniert werden.
- Merkmal [Punktzahl > 0,5 ] und Übereinstimmung [Punktzahl > 0,5 ]// Gibt Ansichten mit einem Merkmal mit einer Punktzahl von mehr als 0,5 und einer Übereinstimmung mit einer Punktzahl von mehr als 0,5 zurück.
Sie können mehrere Filterbedingungen für eine Achse angeben.
- Merkmal[Punktzahl > 0,5 und abgeglichen ]// Gibt Ansichten mit einem Merkmal mit einer Punktzahl größer als 0,5 zurück und das Merkmal befindet sich in einem abgeglichenen Modell.