簡體   English   中英

在 R (REGEX) 中的兩個字符之間提取 substring

[英]Extract a substring between two characters in R (REGEX)

我無法使用正則表達式從字符串中提取經度和緯度。 字符串是這樣的:

[1] "\"42.352800\" data-longitude=\"-71.187500\" \"22\"></div>"

我希望能夠分別獲得第一個數字“42.352800”和第二個數字“-71.187500”作為兩個變量。 因為我將在一堆條目上執行此操作,所以我需要確保它可以獲取這些數字,無論它們是正數還是負數。

我想我應該使用正則表達式基本上說:

緯度 <- 從“到”(獲取第一個數字)

然后類似的東西得到經度。

這里有什么想法嗎? 我對正則表達式比較陌生。

我同意@r2evans 的觀點,如果您從網頁上抓取這些信息,例如使用rvest獲取數據會簡單得多。

要回答您的問題,您可以使用str_match獲取前兩個數字。

string <- "\"42.352800\" data-longitude=\"-71.187500\" \"22\"></div>"

stringr::str_match(string, '(\\d+\\.\\d+).*?(-?\\d+\\.\\d+)')[, -1]
#[1] "42.352800"  "-71.187500"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM