I am trying to add a new line, for every nth delimiter in a string.
For example i will add a new line every 3rd ‘|’ in the string below:
JavaScript
x
6
1
nthelement = 3
2
delimiter = '|'
3
string = 'AB|CD|EEEE|GGg|gger342|gff534|gre343|FGS'
4
#splitter here
5
output = 'AB|CD|EEEE|nGGg|gger342|gff534|ngre343|FGS'
6
Advertisement
Answer
Here is an implementation
JavaScript
1
7
1
def delimit(s, delimiter, n):
2
segments = s.split(delimiter) # splits string by delimiter
3
for i, seg in enumerate(segments):
4
if i % n == 0 and i != 0:
5
segments[i] = 'n' + seg # prepend 'n' to segment
6
return delimiter.join(segments) # join segments
7
Usage:
JavaScript
1
3
1
delimit('AB|CD|EEEE|GGg|gger342|gff534|gre343|FGS', '|', 3)
2
# output: 'AB|CD|EEEE|nGGg|gger342|gff534|ngre343|FGS'
3