diff --git a/slackdown/__init__.py b/slackdown/__init__.py
index 517ee08..54b110b 100644
--- a/slackdown/__init__.py
+++ b/slackdown/__init__.py
@@ -62,16 +62,16 @@ def render(txt):
"""
# Removing links to other channels
- txt = re.sub(r'<#[^\|]*\|(.*)>', r'#\g<1>', txt)
+ txt = re.sub(r'<#[^\|]*?\|(.*?)>', r'#\g<1>', txt)
# Removing links to other users
- txt = re.sub(r'<(@.*)>', r'\g<1>', txt)
+ txt = re.sub(r'<(@.*?)>', r'\g<1>', txt)
# handle named hyperlinks
- txt = re.sub(r'<([^\|]*)\|([^\|]*)>', r'\g<2>', txt)
+ txt = re.sub(r'<([^\|]*?)\|([^\|]*?)>', r'\g<2>', txt)
# handle unnamed hyperlinks
- txt = re.sub(r'<([^a|/a].*)>', r'\g<1>', txt)
+ txt = re.sub(r'<([^a|/a].*?)>', r'\g<1>', txt)
# handle ordered and unordered lists
for delimeter in LIST_DELIMITERS: