in Großbuchstaben ist Gibt es eine einfachere Methode, das Regex-Muster in seiner Gesamtheit anzupassen? Um beispielsweise zu prüfen, ob die angegebene Zeichenfolge in Großbuchstaben geschrieben ist, erscheinen die folgenden zwei Methoden zu komplex. Überprüfung stringr Ich fand auch keinen Hinweis auf eine einfachere Lösung.Überprüfen, ob die Zeichenfolge in R
Methode 1:
isUpperMethod1 <- function(s) {
return (all(grepl("[[:upper:]]", strsplit(s, "")[[1]])))
}
Methode 2:
isUpperMethod2 <- function(s) {
m = regexpr("[[:upper:]]+", s)
return (regmatches(s, m) == s)
}
Ich lasse absichtlich Handhabung leerer, NA, NULL-Strings aufgeblähten Code zu vermeiden.
Das Großbuchstabenmuster kann verallgemeinert werden, um Muster (oder Zeichensatz) beliebig neu zu definieren.
Ich sehe keine Probleme mit beiden oben genannten Lösungen, außer dass sie für das Problem zu komplex erscheinen.
's == toupper (n)' sein? – Justin
Ich möchte die Lösung verallgemeinerbar zu komplexeren Mustern halten. – topchef
Warum nicht 'grepl ("^[[: upper:]] + $ ", s)'? –