Maneiras de remover xa0 de uma string em Python

Najwa Riyaz 30 janeiro 2023
  1. Use a função Normalize() do Unicodedata para remover \xa0 de uma string em Python
  2. Use a função replace() da string para remover \xa0 de uma string em Python
  3. Use a função get_text() da biblioteca BeautifulSoup com strip definido como verdadeiro para remover \xa0 de uma string em Python
Maneiras de remover xa0 de uma string em Python

Este artigo apresenta diferentes métodos para remover \xa0 de uma string em Python.

O Unicode \xa0 representa um espaço rígido ou um espaço sem quebra em um programa. É representado como   em HTML.

As funções Python que podem ajudar a remover \xa0 de uma string são as seguintes.

  • A função normalize() de unicodedata
  • A função replace() da string
  • A função get_text() da biblioteca BeautifulSoup com strip habilitado como True.

Use a função Normalize() do Unicodedata para remover \xa0 de uma string em Python

Você pode usar a função normalize() da biblioteca padrão unicodedata para remover \xa0 de uma string.

A função normalize() é usada da seguinte maneira.

unicodedata.normalize("NFKD", string_to_normalize)

Aqui, NFKD denota a forma normal KD. Ele substitui todos os caracteres de compatibilidade por seus caracteres equivalentes.

O programa de exemplo abaixo ilustra isso.

import unicodedata

str_hard_space = "17\xa0kg on 23rd\xa0June 2021"
print(str_hard_space)
xa = u"\xa0"

if xa in str_hard_space:
    print("xa0 is Found!")
else:
    print("xa0 is not Found!")


new_str = unicodedata.normalize("NFKD", str_hard_space)
print(new_str)
if xa in new_str:
    print("xa0 is Found!")
else:
    print("xa0 is not Found!")

Produção:

17 kg on 23rd June 2021
xa0 is Found!
17 kg on 23rd June 2021
xa0 is not Found!

Use a função replace() da string para remover \xa0 de uma string em Python

Você pode usar a função replace() da string para remover \xa0 de uma string.

A função replace() é usada da seguinte maneira.

str_hard_space.replace(u"\xa0", u" ")

O exemplo abaixo ilustra isso.

str_hard_space = "16\xa0kg on 24th\xa0June 2021"
print(str_hard_space)
xa = u"\xa0"

if xa in str_hard_space:
    print("xa0 Found!")
else:
    print("xa0 not Found!")

new_str = str_hard_space.replace(u"\xa0", u" ")
print(new_str)
if xa in new_str:
    print("xa0 Found!")
else:
    print("xa0 not Found!")

Produção:

16 kg on 24th June 2021
xa0 Found!
16 kg on 24th June 2021
xa0 not Found!

Use a função get_text() da biblioteca BeautifulSoup com strip definido como verdadeiro para remover \xa0 de uma string em Python

Você pode usar a função get_text() da biblioteca padrão BeautifulSoup com strip habilitado como True para remover \xa0 de uma string.

A função get_text() é usada da seguinte maneira.

clean_html = BeautifulSoup(input_html, "lxml").get_text(strip=True)

O exemplo abaixo ilustra isso.

from bs4 import BeautifulSoup

html = "This is a test message, Hello This is a test message, Hello\xa0here"
print(html)

clean_text = BeautifulSoup(html, "lxml").get_text(strip=True)

print(clean_text)

Produção:

Hello, This is a test message, Welcome to this website!
Hello, This is a test message, Welcome to this website!

Artigo relacionado - Python String