java正则表达式的减号_如何用正则表达式捕获科学记数法中的减号?

我试图回答一个问题(后来被删除了),我认为这个问题是要求提取科学记数法的文本表示. (使用R的

regex实现,需要对元字符进行双重转义,并且可以用于纯PCRE或Perl模式,我之间的差异我并不真正理解.)我已经解决了大部分任务但仍然似乎无法捕获捕获组中的前导减号.我似乎唯一能让它成功的方法是使用前导的开括号:

> txt

> sub("^(.+\\()([-+]{0,1}[0-9][.][0-9]{1,16}[eE]*[-+]*[0-9]{0,3})(.+$)","\\2",txt)

[1] "2.22222222e-200" "3.33333e4" "-1.33333e-40" "2.22222222-200"

> sub("^(.+\\()([-+]?[0-9][.][0-9]{1,txt)

[1] "2.22222222e-200" "3.33333e4" "-1.33333e-40" "2.22222222-200"

#but that seems to be "cheating" ... my failures follow:

> sub("^(.+)([-+]?[0-9][.][0-9]{1,txt)

[1] "2.22222222e-200" "3.33333e4" "1.33333e-40" "2.22222222-200"

> sub("^(.+)(-?[0-9][.][0-9]{1,txt)

[1] "2.22222222e-200" "3.33333e4" "1.33333e-40" "2.22222222-200"

> sub("^(.+)(-*[0-9][.][0-9]{1,txt)

[1] "2.22222222e-200" "3.33333e4" "1.33333e-40" "2.22222222-200"

我用“科学记数法正则表达式减去”之类的术语来搜索我的耐心程度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值