[PHP]Wychwytywanie zmian w dużych ciągach znaków |
[PHP]Wychwytywanie zmian w dużych ciągach znaków |
19.07.2019, 11:25:24
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 476 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) |
Cześć,
Zastanawiam się nad optymalną metodą wychwytywania i zaznaczania zmian w dużych stringach. Załóżmy, że mam string z 500 znaków, 50 linijek. Zawiera tagi html, znaki nowej lini, BRy, i wiele innych. W skrócie - totalny chaos. Skrypt pobiera string z bazy, udostępnia do edycji i po edycji zapisuje jako nowy rekord, nie usuwając poprzedniego. Ktoś ten string edytuje, tj. np. dodaje jedno słowo w jednej linijce i zmienia jedno słowo w innej, oraz dodaje całą nową linijkę. Jak wyszukać te konkretne 3 linijki w których dokonano zmian (jedną dodano) względem poprzedniej wersji stringu? Obrazowo: STRING 1: Kod 1. blabla 2. <br> 3. text text text 4. LOREM IPSUM 5. koniec jeden String 2, po edycji: Kod 1. blablablablabla 2. <br> 3. text text text tekst 4. LOREM IPSUM 5. dodana linijka 6. koniec jeden Chciałbym otrzymać informację że dokonano zmian w tych linijkach: Kod 1. blablablablabla 3. text text text tekst 5. dodana linijka Jakieś pomysły? Porównywanie linijka po linijce właściwie odpada bo może być możliwość że cała linijka zostanie usunięta, lub dodane kila nowych, również pustych. Dzięki. Ten post edytował sadistic_son 19.07.2019, 11:35:18 -------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
21.07.2019, 10:59:40
Post
#2
|
|
Grupa: Zarejestrowani Postów: 324 Pomógł: 105 Dołączył: 7.08.2012 Ostrzeżenie: (0%) |
Kiedyś korzystałem z tego: https://github.com/paulgb/simplediff
Nie wskazuje linii, gdzie nastąpiły zmiany, tylko oznacza zmiany tak jak zadamy w funkcji. Ja porównywałem teksty, gdzie następowało wskazywanie m.in. literówek i działało dobrze. Dodatkowe wyrazy też ładnie wyłapuje. Nie wiem z kolei jak zareaguje, gdy jakieś wyrazy znikną. |
|
|
31.07.2019, 08:10:37
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 476 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) |
Też może być, działa całkiem nieźle. Dzięki.
-------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
Wersja Lo-Fi | Aktualny czas: 24.04.2024 - 00:11 |