正则表达式。获得n个字符的字符预设

时间:2015-12-24 13:26:54

标签: regex r

我需要更改像这样的字符串

  blah blah blah,trulala,trampam pam,tararam

  blah blah blah,\ ntrulala,trampam \ npam,tararam

我尝试使用正则表达式"(?:。){10}([[:blank:]])"使用R&#39s的gsub函数

gsub("(?:.){10}([[:blank:]])", "\n", "blah blah blah, trulala, trampam pam, tararam")

,但得到了

  

blah \ ntrulal \ npam,tararam

有什么方法可以做到吗?

1 个答案:

答案 0 :(得分:0)

使用反向引用将捕获组复制到替换中。

gsub("(.{10})[[:blank:]]", "\\1\n", "blah blah blah, trulala, trampam pam, tararam")

您需要将整个.{10}表达式放在第一个组中,它应该是一个捕获组。您不需要[[:blank:]]周围的捕获群,因为它被替换,而不是被复制。