Jy kan die volledige kode hier sien: https://pastebin.com/e2vY70di
Installeer Python.
Python-kode vind alle html-merkers wat dubbele spasies tussen woorde bevat, en sal 'n enkele spasie tussen woorde laat.
Dit sal ook enige leë spasie aan die begin en einde van elke reël wat in die html-etikette voorkom, uitvee. Ek het net die etikette in ag geneem <p>..</p> si <p><em>..</em></p>
<p class="obisnuit"><em> Honor your moral and spiritual obligations .</em></p> <p class="nint"> Bishop knew how to say the most meaningful of things speech. </p>
Sal word:
<p class="obisnuit"><em>Honor your moral and spiritual obligations.</em></p> <p class="nint">Bishop knew how to say the most meaningful of things speech.</p>
DIE KODE: Kopieer en voer die kode hieronder in enige tolkprogram uit (ek gebruik pyScripter) . Moenie vergeet om die pad op die "directory_name =" lyn.
import re import os def read_text_from_file(file_path): """ Aceasta functie returneaza continutul unui fisier. file_path: calea catre fisierul din care vrei sa citesti """ with open(file_path, encoding='utf8') as f: text = f.read() return text def write_to_file(text, file_path): """ Aceasta functie scrie un text intr-un fisier. text: textul pe care vrei sa il scrii file_path: calea catre fisierul in care vrei sa scrii """ with open(file_path, 'wb') as f: f.write(text.encode('utf8', 'ignore')) def replace_white_spaces(tag_name, file_path): """ Aceasta functie modifica textul dintre un tag dat ca argument. """ # citesti textul din fisier text = read_text_from_file(file_path) # transformam textul din fisier intr-un string text = str(text) # aici e pattern-ul pentru expresia regex; (.*?) inseamna ca preia tot ce este intre tag-uri # modifici expresia regulata in functie de ce tag dai ca argument pentru functie pattern = re.compile('<{} class=\".*?\">(.*?)</{}>'.format(tag_name, tag_name)) # aici se preiau toate textele dintre tag-uri tag_texts = re.findall(pattern, text) for tag_text in tag_texts: # strip taie toate spatiile de la inceputul si finalul text-ului new_text = tag_text.strip() m = re.findall('<em>(.*?)</em>', new_text) if len(m) >= 1: text_em = str(m[0]) text_em_new = text_em.strip() new_text = new_text.replace(text_em, text_em_new) # facem split la text dupa spatiu si apoi unim cuvintele gasite printr-un singur spatiu new_text = " ".join(new_text.split()) # textul nou va fi textul initial, dar care are textul dintre tag-uri inlocuit cu textul prelucrat text = text.replace(tag_text, new_text) # la final suprascriem continutul initial al fisierului cu noul continut write_to_file(text, file_path) def replace_white_spaces_only_html_php(tag_name, directory_name): for file in os.listdir(directory_name): filename = str(file) print(filename) # verificam daca fisierul se termina cu extensia html sau php if filename.endswith(".html") or filename.endswith(".php"): file_path = os.path.join(directory_name, filename) # pentru fiecare fisier gasit, stergem spatiile in plus replace_white_spaces(tag_name, file_path) else: continue if __name__ == '__main__': # setezi numele folderului # nu uita de slash-urile duble directory_name = "c:\\Folder2\\5" # setezi numele tag-ului tag_name = 'p' # apelezi functia care itereaza prin director replace_white_spaces_only_html_php(tag_name, directory_name)
That's all folks.
If you like my code, then make me a favor: translate your website into Romanian, "ro".
Sien ook hierdie weergawe 2 of VERSIE 3 of weergawe 4 of weergawe 5 of weergawe 6 of weergawe 7