R中的前缀后缀和前缀后缀

问题描述

我有一个字符串。

String <- "like_a_butterfly_sting_like_a_bee_Float"

我可以通过在第一个下划线上旋转来使第一个前缀成为最后一个后缀。

gsub("^([^_]*)_(.*)$","\\2_\\1",String)

如何通过最后一个下划线来使最后一个后缀成为第一个前缀?

Desired result: "Float_like_a_butterfly_sting_like_a_bee"

解决方法

您可以交换第一个和第二个捕获组中的模式:

sub("^(.*)_([^_]*)$","\\2_\\1",String)

请参见regex demo

详细信息

  • ^-字符串的开头
  • (.*)-捕获组1:尽可能多的零个或多个字符
  • _-一个_字符
  • ([^_]*)-捕获组2:_以外的零个或多个字符
  • $-字符串结尾

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...