Skip to content

Commit df508e2

Browse files
sed now respects g
1 parent ccec8cd commit df508e2

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/bobbit/modules/sed.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,27 @@
33
import re
44

55
# Metadata
6-
76
NAME = 'sed'
87
ENABLE = True
9-
PATTERN = '^s/(?P<pattern>[^/]+)/(?P<replacement>[^/]*)[/]*$'
8+
PATTERN = '^s/(?P<pattern>[^/]+)/(?P<replacement>[^/]*)[/]?(?P<repeat>[g])?$'
109
USAGE = '''Usage: s/pattern/replacement/
1110
This searches the channel's history for the most recent line that has the
1211
pattern and then performs the replacement.
1312
'''
1413

1514
# Command
1615

17-
async def sed(bot, message, pattern, replacement):
16+
async def sed(bot, message, pattern, replacement, repeat=None):
1817
replacement = bot.client.format_text('{bold}{}{bold}', replacement)
1918
for original in bot.history.search(message.channel, pattern=pattern, limit=5, reverse=True):
2019
if re.search(PATTERN, original.body):
2120
continue
2221

23-
replaced = re.sub(pattern, replacement, original.body)
22+
if repeat == None:
23+
replaced = re.sub(pattern, replacement, original.body, count=1)
24+
else:
25+
replaced = re.sub(pattern, replacement, original.body,)
26+
2427
return original.copy(body=replaced)
2528

2629
# Register

0 commit comments

Comments
 (0)