如何用R语言将*包裹的文本标签替换为标签首字符?
R语言处理带*标签的文本:替换标签为首字符
你需要调整正则表达式,只捕获*包裹内容的第一个字符,再用这个字符替换整个标签段。以下是可行的代码:
text <- "The fir*s double*t day o*f lost* the *w strange*eek" result <- gsub("\\*(.)[^\\*]*\\*", "\\1", text) # 输出结果 cat(result) #> The first day of the week
正则说明
\\*(.)[^\\*]*\\*:精准匹配被*包裹的标签段\\*:匹配开头的星号(.):捕获标签内的第一个字符,作为后续替换的目标[^\\*]*:匹配第一个字符之后到下一个星号前的所有非星号字符(忽略这些内容)\\*:匹配结尾的星号
\\1:引用捕获到的第一个字符,完成替换
内容的提问来源于stack exchange,提问作者isimaralv
相关产品推荐
相关产品推荐

