[Windows8] .txt wijzigen

Pagina: 1
Acties:
  • 261 views

Acties:
  • 0 Henk 'm!

  • Processorkoeler
  • Registratie: Oktober 2013
  • Laatst online: 05-10 19:38

Processorkoeler

Geen stock koeler

Topicstarter
Beste mensen,

Ik heb een collectie .TXT bestanden waar waarschijnlijk dubbele woorden instaan. Onbekende tekens (non ascii) wil ik ook weghebben. Is er een programma wat kan filteren, en bepaald woorden (die bijv. aan enkele voorwaarden niet voldoen) verwijderen? Waar het voor is dat doet er nu even niet toe, ik heb het gewoon nodig.

Ik heb lopen googlen maar ik vind niets.
Bedankt!

Acties:
  • 0 Henk 'm!

  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 01:10
Ik denk dat je even een voorbeeldje zal moeten geven van zo een .txt-bestand om goed advies te kunnen krijgen. Je zou misschien met Notepad+ of SublimeText kunnen proberen, die hebben dat soort functies, maar ik denk dat je misschien toch zelf iets zal moeten scripten met bijvoorbeeld PowerShell om het precies naar wens te krijgen.

Overigens heeft dit probleem natuurlijk niets met Windows 8 te maken.....

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


Acties:
  • 0 Henk 'm!

  • Processorkoeler
  • Registratie: Oktober 2013
  • Laatst online: 05-10 19:38

Processorkoeler

Geen stock koeler

Topicstarter
Het moest toch ergens? Ik heb Windows 8 als OS, en moest m'n OS in de titel opgeven.
Ik heb geen verstand van scripten, daarom zoek ik een programmatje (of een script wat ik zo kan uitvoeren door op een knopje te drukken).

Heel simpel voorbeeld, ik heb een lijst met allemaal woorden. Woorden van 4 letters, maar ook van 10 letters. Ik wil dus alle woorden korter dan (bijv. 4) letters eruit filteren (verwijderen)

Acties:
  • 0 Henk 'm!

  • RaZ
  • Registratie: November 2000
  • Niet online

RaZ

Funky Cold Medina

Dan heb je een script nodig die kan uitvinden welke tabel gebruikt wordt. Als het geen ASCII is, is het wat anders (neem een character 160 wat in sommige charactersets een spatie is (welk in ascii code 32 is)).

4 letters met 10 charaters klinkt als een unicdoe codering, maar zeker weten doe je dus niet.

En er zijn zoveel verschillende characters-sets dat je eerst zal moeten checken welke gebruikt wordt, en daarna omzetten...

Je wet dus niet wat je hebt, en je weet dus ook niet hoe je de boel moet omzetten... Immers kan je een utf-8 naar ascii doen, maar als de bron geen utf-8 is, gaat die conversie al volledig mank.

PHP kan het wel met een autodetect op de gebruikte codering, maar ook dat is niet waterdicht.. Als je alles naar de zelfde codering hebt, is het ontdubbelen van woorden denk ik wel te automatiseren. Niet echt een antwoord op je vraag, maar je weet wel waar het probleem kan liggen.

Ey!! Macarena \o/


Acties:
  • 0 Henk 'm!

  • Processorkoeler
  • Registratie: Oktober 2013
  • Laatst online: 05-10 19:38

Processorkoeler

Geen stock koeler

Topicstarter
RaZ schreef op woensdag 26 februari 2014 @ 20:48:
Dan heb je een script nodig die kan uitvinden welke tabel gebruikt wordt. Als het geen ASCII is, is het wat anders (neem een character 160 wat in sommige charactersets een spatie is (welk in ascii code 32 is)).

4 letters met 10 charaters klinkt als een unicdoe codering, maar zeker weten doe je dus niet.

En er zijn zoveel verschillende characters-sets dat je eerst zal moeten checken welke gebruikt wordt, en daarna omzetten...

Je wet dus niet wat je hebt, en je weet dus ook niet hoe je de boel moet omzetten... Immers kan je een utf-8 naar ascii doen, maar als de bron geen utf-8 is, gaat die conversie al volledig mank.

PHP kan het wel met een autodetect op de gebruikte codering, maar ook dat is niet waterdicht.. Als je alles naar de zelfde codering hebt, is het ontdubbelen van woorden denk ik wel te automatiseren. Niet echt een antwoord op je vraag, maar je weet wel waar het probleem kan liggen.
Het gaat echt om bijv. 1 miljoen woorden. Snap niet echt wat je bedoelt met met utf-8. Ik bedoel niet 4 letters met 10 characters,maar woorden van 4 letters, of 10 letters (dus gewoon allemaal losse woorden van 4 tot en met 10 letters elk).
Dan wil ik bijv. alle woorden "kleiner dan" 5 letters weghalen.

Acties:
  • 0 Henk 'm!

  • RaZ
  • Registratie: November 2000
  • Niet online

RaZ

Funky Cold Medina

Ik kan je exact vertellen hoe je het kan doen, ik kan het alleen niet in code voor je zetten.

Maar het komt neer op elk bestand in blokken in te lezen. Die string explodeer je op de spatie, en je checkt de array op de lengte van het woord. Is het woord 5 char of groter, zet het in een nieuwe array. Ben je klaar met dat blok, implodeer de boel en append je de boel naar een tijdelijk bestand.

Dat herhaal je tot je een EOF krijgt. Dan verwijder je het bron bestand, hetnoem je het tijdelijke bestand met de naam van het bronbestand. KLAAR!

Het tikken van dit stukje tekst is een stuk eenvoudiger dan het omzetten naar code. Al denk ik niet dat je daar een werkend script voor zal vinden, en is het eigenlijk meer maatwerk. Huur iemand in die dat voor je kan doen, dat is denk ik een stuk sneller, en dus ook goedkoper.

Ey!! Macarena \o/


Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Inderdaad "gewoon" een script schrijven in je favoriete taal.

Er is geen applicatie die dit out-of-the-box voor je doet. Ook zal je geen script vinden dat al op 99% is, dit is toch maatwerk. Daarom is verplaatsen naar Client Software Algemeen niet zinvol. Programming zou dan beter passen maar (ook) daar wordt verwacht dat er zelf een concrete voorzet voor een oplossing is. (Of eventueel in CSA als je het bijv in MS Office / VBA zou willen doen, al ligt dat erg niet voor de hand).

Als je geen scripting ervaring hebt (of wil krijgen na wat lees- en oefenwerk) dan zou ik inderdaad adviseren iemand er voor in te huren. Als je het graag zelf doet en script, open gerust een nieuw topic in PRG als je er bijna bent maar vastloopt. Lees natuurlijk eerst even het policy aldaar.

Topic hier in WOS (waar we het meer hebben over Windows als OS) is weinig zinvol, dus ik sluit het hier.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)

Pagina: 1

Dit topic is gesloten.