Gibt es eine einfache/einzeilige Python entspricht R grepl
Funktion?einfachste Python entspricht R's grepl
strings = c("aString", "yetAnotherString", "evenAnotherOne")
grepl(pattern = "String", x = strings) #[1] TRUE TRUE FALSE
Gibt es eine einfache/einzeilige Python entspricht R grepl
Funktion?einfachste Python entspricht R's grepl
strings = c("aString", "yetAnotherString", "evenAnotherOne")
grepl(pattern = "String", x = strings) #[1] TRUE TRUE FALSE
können Sie verwenden Liste Verständnis:
strings = ["aString", "yetAnotherString", "evenAnotherOne"]
["String" in i for i in strings]
#Out[76]: [True, True, False]
Oder verwenden re
Modul:
import re
[bool(re.search("String", i)) for i in strings]
#Out[77]: [True, True, False]
Oder mit Pandas
(R Benutzer in dieser Bibliothek interessiert sein, mit einem Datenrahmen „ähnlich "Struktur":
import pandas as pd
pd.Series(strings).str.contains('String').tolist()
#Out[78]: [True, True, False]
Eine einzeilige äquivalent ist möglich, mit re
:
import re
strings = ['aString', 'yetAnotherString', 'evenAnotherOne']
[re.search('String', x) for x in strings]
Dies wird nicht Boolesche Werte geben, aber truthy Ergebnisse, die genauso gut sind.
Wenn Sie nicht über einen regulären Ausdruck benötigen, sondern testen nur für die Existenz eines susbtring in einem String:
["String" in x for x in strings]
Die Wunder der Liste Verständnis! – OdeToMyFiddle
Ich nehme an, die frühere Lösung würde nicht funktionieren für "String $", oder? (d. h., es ist nur Teilstring-Übereinstimmung) – MichaelChirico
wahr Sie müssen das Regex-Modul in diesem Fall verwenden. –