我想在字符串“NPWP”之后剪切数字,然后取出所有数字。
有时我会有这样的字符串:
df.ex <- df.ex %>% group_by(id) %>% mutate(var2 = if_else(var1 %in% 'b', 'foo','bar'))
有时这样:
$valueDetail['DTL02CNA'] = NPWP:016386112436000 JALAN ELANG DESA SUKAHATI CITEUREUP BOGOR 16810, INDONESIA TEL:+62(21)8765105
从上面的例子中,我需要这样的结果:
$valueDetail['DTL02CNA'] = NPWP 314633389431000 DELTA SILICON INDUSTRIALL PARK 3 JL PINANG F 16/25A, CICAU CIKARANG PUSAT, CITY: BEKASI, JB 17550 INDONESIA
现在,我只知道如何识别它
016386112436000
314633389431000
答案 0 :(得分:1)
从字符串^
的开头匹配,匹配NPWP
后跟可选的冒号:?
和零个或多个空格字符\s*
。
然后,您可以使用\K
重置报告的匹配的起点,并匹配一个或多个数字\d+
:
另一种选择可能是在第一个捕获组(\d+)
中匹配捕获您的值:
答案 1 :(得分:0)
答案 2 :(得分:0)
如果您的字符串NPWP和数字是确切的长度,请使用substr()
$number = substr($valueDetail['DTL02CNA'], 5, 15);