如何从这个字符串中提取MLA723950998?
"JM“
我成功地提取了司法协助。
gsub('.*(M\\w+).*', '\\1', "https://auto.mercadolibre.com.ar/MLA-723950998-peugeot-208-0km-16-active-plan-100-financiado-darc-_JM")MLA
发布于 2018-07-24 19:40:33
你可以用
.*/(M\w+)-(\d+).*代之以\1\2。
详细信息
.*/ -任何0+字符,尽可能多,直到并包括字符串中的最后一个/(M\w+) -第1组(后来使用替换模式中的\1占位符):M和1+字母、数字或/和_- -a连字符(\d+) -第2组(稍后使用替换模式中的\2占位符):一个或多个数字.* -剩下的字符串.见R演示
x <- "https://auto.mercadolibre.com.ar/MLA-723950998-peugeot-208-0km-16-active-plan-100-financiado-darc-_JM"
gsub('.*/(M\\w+)-(\\d+).*', '\\1\\2', x)
# => [1] "MLA723950998"发布于 2018-07-24 15:59:47
也许这个解决方案对你有用:
library(stringi)
x = "https://auto.mercadolibre.com.ar/MLA-723950998-peugeot-208-0km-16-active-plan-100-financiado-darc-_JM"
stri_extract_last_regex(x, "(?<=/)([A-Za-z]+.\\d+)(?=[^/]+$)")
[1] "MLA-723950998"(i)第一次向后看后发现斜杠的位置;。(ii)其后是字母、1 x任何字符及数字;。(iii)向前看,其后只可加上斜线。
https://stackoverflow.com/questions/51502354
复制相似问题