re正则式怎么去掉,查找到的相关字段的标点符号?

cs = input('''文件读写路径''')
with open(cs) as file:
     content=file.read()
     d =content.rstrip()
   #  print(d)
   

import re
l = re.sub(r'[~`!@#$%^&*()_\-+=|\\{\}\[\]:;\"\'<>,.?/·!¥…()—【】“”:、?《》,。]+', '\n', d)


str = (sorted(l.split(), key=len))
for o in str[:9]:
    print(o)
    
cf =input()
for i in d.split(cf):
  if i: print(cf+i)

我这代码ひひ拼接不上

我原来的想法是:读txt文件
查找相关字段
re正则式去掉标点符号
文字从小<大排序
import re
cs = input('''文件读写路径\n''')
with open(cs) as file:
    content = file.read()
    d = content.rstrip()
  #  print(d)

l = re.sub(
    r'[~`!@#$%^&*()_\-+=|\\{\}\[\]:;\"\'<>,.?/·!¥…()—【】“”:、?《》,。]+', '\n', d)
str = (sorted(l.split(), key=len))
for o in str:
    print(o)

sub 就可以实现啊,另外排序大小是unicode 排序嘛,如果是的话用 ord 作为排序键函数