【问题标题】:Transforming pattern with gsub使用 gsub 转换模式
【发布时间】:2021-12-11 11:57:52
【问题描述】:

为什么会这样:

gsub("([0-9])+(e)+(-)","\\1^x10^\\3",eg)

打开这个: eg<-5.4748554e-14

进入这个:

5.4x10^-14

我想这样做:

5.4748554x10^-14

【问题讨论】:

  • 为什么不直接替换e?即sub("e", " x 10^", eg)??
  • 我希望它只改变包含普通单词的字符串中的科学记数法 e。

标签: r regex


【解决方案1】:

+ 移动到括号内,使其成为第一组比赛:

> gsub("([0-9]+)(e)+(-)", "\\1x10^\\3", eg)
[1] "5.4748554x10^-14"
> 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-29
    • 2017-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-21
    相关资源
    最近更新 更多