2015-12-24 68 views
0

獲取字符preciding我需要改變這樣的正則表達式。由n個字符

等等等等,trulala,trampam PAM字符串,tararam

等等等等等等,\ ntrulala,trampam \ npam,tararam

我試圖使用正則表達式「(?:。){10}([[:blank:]])」wit^h的r GSUB功能一樣,

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

,但得到

等等\ ntrulal \ NPAM,tararam

有什麼辦法可以做到這一點?

+1

您需要使用反向引用在替換字符串複製的捕捉組。 – Barmar

+0

也與此有關:http://stackoverflow.com/questions/26494995/forming-and-using-regular-expressions-in-r/26495062#26495062 – hwnd

回答

0

使用反向引用捕獲組複製到更換。

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

你需要把第一組內部的整.{10}表達,它應該是一個捕獲組。你不需要一個圍繞[[:blank:]]的捕獲組,因爲它正在被替換,而不是被複制。

+0

謝謝,它的工作原理!!!! – Powerfool