Django findall()缺少1个必需的位置参数:';字符串';

Django findall()缺少1个必需的位置参数:';字符串';,django,django-models,django-views,django-forms,django-templates,Django,Django Models,Django Views,Django Forms,Django Templates,我试图制作一个过滤器,当用户提到用户时,我尝试打开具有@的帐户,例如,如果有@用户此提及转换为类似Twitter的链接 引发此错误的我的筛选器'findall()缺少1个必需的位置参数:“字符串” 重新导入 从django导入模板 register=template.Library() def开立账户(文本): def开立账户(文本): 结果=re.findall((^ |[^@\w])@(\w{1,20})” 对于结果中的结果: 结果=结果[0] return text.replace(res

我试图制作一个过滤器,当用户提到用户时,我尝试打开具有
@
的帐户,例如,如果有
@用户
此提及转换为类似Twitter的链接

引发此错误的我的筛选器
'findall()缺少1个必需的位置参数:“字符串”

重新导入
从django导入模板
register=template.Library()
def开立账户(文本):
def开立账户(文本):
结果=re.findall((^ |[^@\w])@(\w{1,20})”
对于结果中的结果:
结果=结果[0]

return text.replace(result,'删除except子句,您可能会得到一条更详细的错误消息我更新了我的问题,但没有except,它在
results=re.findall((^ |[^@\w])@(\w{1,20})行上引发了
findall()缺少1个必需的位置参数:“string”
您需要指定一个字符串来搜索您可能正在考虑的
find_re=re.compile((^[^-\w])@(\w{1,20})
在这种情况下,您可以执行
results=find_re.findall(some_string)
某些字符串的用法是什么
 import re

from django import template
register = template.Library()
def open_account(text):
    def open_account(text):
      results = re.findall("(^|[^@\w])@(\w{1,20})")
      for result in results:
        result = result[0]
      return text.replace(result, '<a target="_blank" style="color: blue;"')


url_target_blank = register.filter(open_account, is_safe = True)