generated from mwc/lab_compression
27 lines
492 B
Python
27 lines
492 B
Python
import codecs
|
|
from custom_codecs.register import register_codec
|
|
|
|
|
|
def encode(text):
|
|
result = []
|
|
|
|
last_space = False
|
|
|
|
for c in text:
|
|
if c.isalnum():
|
|
result.append(c)
|
|
last_space = False
|
|
elif c == " ":
|
|
if not last_space:
|
|
result.append(" ")
|
|
last_space = True
|
|
|
|
return "".join(result).encode("ascii")
|
|
|
|
|
|
def decode(data):
|
|
return data.decode("ascii")
|
|
|
|
|
|
register_codec("alphanumeric", encode, decode)
|