Regex 如何提取R中的百分比?
从这个字符串Regex 如何提取R中的百分比?,regex,r,string,extract,stringr,Regex,R,String,Extract,Stringr,从这个字符串边框颜色:#002449;左:74.4%位于顶部;37%;我想将第一个百分比74.4%设置为变量X,第二个百分比37%设置为变量Y 我尝试过使用这个正则表达式“^.*?(\\d+)%.*”,但这会去掉%符号,只从74.4中提取第二个4 任何帮助都将不胜感激。如果需要任何进一步的信息,请告诉我。两种变体:'\\d+\.?\\d*%'(等效)和'[\\d.]+%'(适用于此处,但不太具体说明句点)感谢您的回答。我现在正在做:X@Dre,如果你真的想有两个独立的变量,为什么不像我对某个变量
边框颜色:#002449;左:74.4%位于顶部;37%;
我想将第一个百分比74.4%
设置为变量X
,第二个百分比37%
设置为变量Y
我尝试过使用这个正则表达式“^.*?(\\d+)%.*”
,但这会去掉%
符号,只从74.4
中提取第二个4
任何帮助都将不胜感激。如果需要任何进一步的信息,请告诉我。两种变体:
'\\d+\.?\\d*%'
(等效)和'[\\d.]+%'
(适用于此处,但不太具体说明句点)感谢您的回答。我现在正在做:X@Dre,如果你真的想有两个独立的变量,为什么不像我对某个变量e
的回答那样提取两个字符串,然后X
s <- "border-color:#002449;left:74.4%top;37%;"
regmatches(s, gregexpr("\\d+(\\.\\d+){0,1}%", s))[[1]]
# [1] "74.4%" "37%"
library(stringr)
str_extract_all(s, "\\d+(\\.\\d+){0,1}%")[[1]]
# [1] "74.4%" "37%"