在 R 中刪除字串中的最後一個字元

Manav Narula 2023年1月30日 2021年1月22日
  1. 使用 substr() 函式刪除 R 中的最後一個字元
  2. 使用 str_sub() 函式刪除 R 中的最後兩個字元
  3. 使用 gsub() 函式刪除 R 中的最後兩個字元
在 R 中刪除字串中的最後一個字元

字串是任何程式語言中必不可少的常用部分。它本質上是一個序列中的字符集合,可以儲存變數和常量。

在 R 中,單引號或雙引號之間的任何東西都被認為是一個字串。本教程將介紹如何從字串或字串向量中刪除最後一個字元。

使用 substr() 函式刪除 R 中的最後一個字元

R 中的 substr() 函式從一個字串中提取或替換一個子字串。我們將給定的字串和所需子字串的起始和最終位置傳遞給函式。請看下面的例子。

substr("Jack",2,3)
[1] "ac"

在上面的例子中,它提取的是第 2 到第 3 個位置的字元。

name <- "Jack"
substr(name,1,nchar(name)-2)
[1] "Ja"

nchar() 函式返回字串的長度,因此 1, nchar(name)-2 指定了從開始到最後第三個字元的子字串範圍。上面的示例程式碼從給定的字串中刪除了最後兩個字元。

我們也可以向 substr() 函式傳遞一個字串向量或一個列名。下面的程式碼將展示我們如何從一個字串向量中刪除最後兩個字元。

name <- c("Jackkk","Markkk","Jayyy")
substr(name,1,nchar(name)-2)
"Jack" "Mark" "Jay"

使用 str_sub() 函式刪除 R 中的最後兩個字元

str_sub() 函式在 R 中的 stringr 包中提供,它與 substr() 函式非常相似,但有一些區別。與 substr() 函式不同的是,它已經有了一些預設引數,並且對負指數的處理方式也不同。

我們可以使用下面所示的 str_sub() 函式刪除最後兩個字元。

library(stringr)
name <- c("Jackkk","Markkk","Jayyy")
str_sub(name,1,nchar(name)-2)
[1] "Jack" "Mark" "Jay"

使用 gsub() 函式刪除 R 中的最後兩個字元

R 中的 gsub() 函式通過匹配特定的模式來替換或提取字串。要使用 gsub() 函式從末尾刪除字元,我們需要使用正規表示式。請看下面的例子。

name <- c("Jackkk","Markkk","Jayyy")
gsub('.{2}$', '', name)
[1] "Jack" "Mark" "Jay" 

.{2}$ 是匹配最後兩個字元的正規表示式。. 匹配任何字元,{2} 匹配前面的模式兩次,$ 匹配字串的末尾。

Author: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

相關文章 - R String