1
我想在R中使用正則表達式。我對這種語言很感興趣,對於這個基本問題感到抱歉。 我正在處理這個字符串(「11.22.33.44」),我只是拿一部分(「11.22.33」)。我會刪除(「.44」)並加上55來得到結果(「11.22.3355」)。如何在R中使用正則表達式在字符串上工作
我想在R中使用正則表達式。我對這種語言很感興趣,對於這個基本問題感到抱歉。 我正在處理這個字符串(「11.22.33.44」),我只是拿一部分(「11.22.33」)。我會刪除(「.44」)並加上55來得到結果(「11.22.3355」)。如何在R中使用正則表達式在字符串上工作
s <- "11.22.33.44"
sub("([[:digit:]]*\\.[[:digit:]]*\\.[[:digit:]]*)(\\.[[:digit:]]+)", "\\1", s)
#[1] "11.22.33"
?regex
使用括號來劃分兩個不同的模式,並只返回匹配第一個模式的部分。第一種模式是由兩個週期分隔的任意數量的數字。在任何正則表達式函數的第一個參數中,時間段需要被轉義(兩次)。
第二個參數中的"\\1"
是引用第一個模式的示例。第二個參數中的反斜槓與第一個參數中的反斜槓不同。
是每次都會改變的字符串長度和格式嗎?如果沒有,你可以使用'substring()'來做到這一點。 – tcash21
As @ tcash21說... *執行'regex'的規則是什麼? –
我谷歌的「正則表達式在R」和第1獲得http://www.regular-expressions.info/rlanguage.html。檢查它是否回答你的疑惑。如果是這樣,請刪除這個問題。 – Marek