как удалить слово в R из строки с помощью регулярного выражения - PullRequest
0 голосов
/ 16 июня 2020

Привет, я хотел бы удалить пробелы (отметка № 170) и многие другие из нижеприведенных. любая идея, как я могу go об этом?

words2                        
 [116] "been"             "any"              "reasonable"       "cause"            "for"             
 [121] "such"             "apprehension"     "Indeed"           "the"              "most"            
 [126] "ample"            "evidence"         "to"               "the"              "contrary"        
 [131] "has"              "all"              "the"              "while"            "existed"         
 [136] "and"              "been"             "open"             "to"               "their"           
 [141] "inspection"       "It"               "is"               "found"            "in"              
 [146] "nearly"           "all"              "the"              "published"        "speeches"        
 [151] "of"               "him"              "who"              "now"              "addresses"       
 [156] "you"              "I"                "do"               "but"              "quote"           
 [161] "from"             "one"              "of"               "those"            "speeches"        
 [166] "when"             "I"                "declare"          "that"             ""                
 [171] "I"                "have"             "no"               "purpose"          "directly"        
 [176] "or"               "indirectly"       "to"               "interfere"        "with"            
 [181] "the"              "institution"      "of"               "slavery"          "in"              
 [186] "the"              "States"           "where"            "it"               "exists"          
 [191] "I"                "believe"          "I"                "have"             "no"              

1 Ответ

5 голосов
/ 16 июня 2020

Если у вас есть вектор x = c(1, 2, 3, 2, 1), и вы хотите удалить все 2 s, вы можете сделать это: x[x != 2]. Точно так же у вас есть вектор words2, и вы хотите удалить пробелы "", поэтому вы можете сделать это: words2[words2 != ""].

Конечно, чтобы удалить их из words2 и сохранить результат, вам нужно использовать <- или = для перезаписи words2, как в

words2 = words2[words2 != ""] ## remove blanks

words2 = words2[nchar(words2) > 0] ## keep only strings with more than 0 characters

## remove blank and "bad string" strings
words2 = word2[! words2 %in% c("", "bad string")] 

Regex полезен, если вы просматриваете строки (например, удаляете строки, содержащие «а»), или если вы используете шаблоны (например, удаляете строки с числом в конце). Когда вы ищете точное совпадение всей строки, вам не нужно регулярное выражение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...