此问题已在此处有答案:
Regex in R: replace only part of a pattern(1个答案)
3天前关闭。
我尝试使用stringr包中带有正则表达式的str_replace()。因此,我在要替换的模式和替换中都提供了正则表达式。然而,结果字符串打印正则表达式本身,而不是它应该代表的内容。
代码如下:
str_replace(string = c('AB12C', 'DE34F', 'GH56I'), pattern = '[:digit:]{2}', replacement = '[:digit:]{2} ')
我想得到的:“AB12 C”“DE34 F”“GH56 I”
我实际得到的是:
“AB[:digit:]{2} C”“DE[:digit:]{2} F”“GH[:digit:]{2} I”
就好像我逃脱了正则表达式一样,这显然是我不想做的,我怎么解决这个问题呢?
2条答案
按热度按时间k2fxgqgv1#
你可以试试
输出
0dxa2lsx2#
你可以使用一个非消耗性的look behind
(?<=[:digit:]{2})
,然后在这个位置插入空格。