2017-06-15 115 views
1

我有一組複雜的標識符是數據框的列名稱。這正則表達式匹配所有的人:從正則表達式生成部分隨機字符串

regex <- "^PLUTO-.{2}-.{4}-01.{1}-.{3}-.{4}-.{2}$" 

現在我想生成使用此正則表達式來得到這樣的隨機標識符:

"PLUTO-xx-xxxx-01x-xxx-xxxx-xx" 
"PLUTO-xx-xxxx-01x-xxx-xxxx-xx" 
... 

其中x是隨機字符。

有沒有在R中做這種事情的函數?我發現了java和python的這些主題,但沒有任何R(只有paste()和collapse()解決方案)。

回答

1

一種選擇是gsubfn

library(gsubfn) 
gsub("\\^|\\$", "", gsubfn("\\.{([[:digit:]]+)}", ~ paste(rep("x", n), collapse=""), regex)) 
#[1] "PLUTO-xx-xxxx-01x-xxx-xxxx-xx" 
+1

感謝你的代碼'代表(樣本(C(字母,1:9),1),N)'的把戲做到了!雖然我在想一個能識別正則表達式並隨機生成可能字符串的函數。 –

相關問題