Español
Foro

Großbuchstaben en un Textstring suchen

 

Thomas
Freier
Yo habe veces una Cuestión, como es el folgende Problema mejor (más rápido) a lösen:
In uno Textdatei, producido de uno PDF por Adobe oder PDFtoText.exe, voluntad Worte zusammengezogen. Diese sería Me gusta otra vez trennen, si innerhalb uno Wortes Großbuchstaben auftauchen. Ist una Vorbereitung para el Sprachausgabe y lo hört se no bien a, si antes una Hauptwort kein Leerzeichen es. Mi bisherige Solución:
KompilierenMarcaSeparación
Zusammengefasste Wörter bei einem Großbuchstaben trennen
Dim$ 500
declare this$, insideThis$, Nr_B%, Nr_B1%, Such$ , Such%, Edit$, N_Strg%, Ende%

Proc isOneInside   von Michael Wodrich

    Syntax: isOneInsice( this$, insideThis$ )
    Ist eines der Zeichen in this auch in insideThis enthalten?
    this wird als eine Aufzaehlung von einzelnen Zeichen betrachtet.
    Parameters this$, insideThis$
    Declare Ok%

    WhileLoop Len(this$)

        If InStr(Mid$(this$, &loop, 1), insideThis$)

            If &Loop>Nr_B1%

                Ok% = 1
                Nr_B% = &Loop
                BREAK

            EndIf

        EndIf

    EndWhile

    Return Ok%

EndProc

cls
Edit$=WastutLübeckaufdemReisemarktHeute ohneTourismusmanager
Print Edit$
insideThis$=ABCDEFGHIJKLMNOPQRSTUVWXYZÄÜÖ
..............Alle Worte trennen und speichern

WhileLoop 50

    List$ &Loop = Substr$(Edit$,&Loop, )

    IF List$(&Loop) =

        N_Strg%= &Loop-1
        Break

    EndIf

EndWhile

.............ist innerhalb eines Wortes ein Großbuchstabe?

WhileLoop n_Strg%

    Such$= List$(&Loop)
    print such$
    this$= right$(Such$,len(Such$)-1)
    Nr_B1% = 0
    ..........................suchen ab Wortanfang ohne 1. Buchstaben

    WhileLoop 10

        if isOneInside( this$, insideThis$ )

            Such$= Ins$( ,Such$,(Nr_B% + 1)) gefunden und Leerzeichen vor Großbuchstaben
            Nr_B1% = Nr_B% + 1                 einsetzen
            this$= right$(Such$,len(Such$)-1)

        Else

            Break

        endif

    Wend

    print such$
    Print
    List$ &Loop = Such$

EndWhile

Print
.............String neu zusammen setzen
Edit$ =

WhileLoop n_Strg%

    Edit$ = Edit$ + List$(&Loop)+

EndWhile

WaitKey
 
Gruß Thomas
Windows XP SP2, XProfan X2
21.11.2007  
 




Jörg
Sellmeyer
So para Ejemplo:
KompilierenMarcaSeparación
ab XProfan10
Declare t$
Var Edit$=WastutLübeckinÖstereichaufdemReisemarktHeuteohneTourismusmanager
Print Edit$

While Match$(([a-z|äöü])([A-Z|ÄÖÜ]),Edit$) >

    t$ = $Match
    Edit$ = Translate$(Edit$,t$,Left$(t$,1) +   + Right$(t$,1))

Wend

Print Edit$
put

KompilierenMarcaSeparación
Auf el gleiche Weise kannst Usted todavía el ganzen Präpositionen y Bindewörter freistellen y Usted hast ya una halbwegs lesbaren Texto. Si usted entonces todos Möglichkeiten de ser y haben sowie algunos Basisverben (z.B. hacer) erledigst...
Achja, el Artikel todavía! Mit el richtigen Match$-Befehle va el alles en uno Bucle.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.11.2007  
 




Thomas
Freier
@ Jörg, DANKE, sieht kurz y bien de.
 
Gruß Thomas
Windows XP SP2, XProfan X2
21.11.2007  
 




Jörg
Sellmeyer
Thomas Freier
@ Jörg, DANKE, sieht kurz y bien de.


Lo es kurz y bien
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.11.2007  
 




Jörg
Sellmeyer
Hola Tomás,
Yo antworte veces hier, entonces haben todos qué su:
Trennstriche al Zeilenende dejar se ligeramente con Translate$(Texto$,-
,) herausfiltern.
Usted puede Su Texto incluso igual en Absätze zerlegen:
KompilierenMarcaSeparación
Jetzt hast Usted en el Principio absatzformatierten Fließtext. Den kannst Usted ahora el Vorleseprogramm transferencia, oder, si Su Frau gerne selber lesen möchte, en beliebiger Schriftgröße en un Multiedit unterbringen. Mit eingestelltem automatischem Zeilenumbruch (negativer Valor para Höhe) debería el entonces problemlos lesbar ser. In una RTF-Control kannst Usted lo incluso todavía cualquier formatieren.
Saludo
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
22.11.2007  
 



Hm, wäre imho algo performant como sin regexp y sin schleifen auch con
KompilierenMarcaSeparación
var in$=Hier_die_Funktion_die_den_Text_aus_PDF_liest()
in$=translate$(in$,-
,)
in$=translate$(in$,|,chr$(1))
in$=translate$(in$,!
,!|)
in$=translate$(in$,?
,?|)
in$=translate$(in$,.
,.|)
in$=translate$(in$,
,)
in$=translate$(in$,|,
) ich würde hier wahrscheinlich der Optik halber sogar
angeben, unwichtig...
in$=translate$(in$,chr$(1),|)
23.11.2007  
 




Jörg
Sellmeyer
Obs más rápido es, käme en una Intento a. Mi erste Bucle se en efecto sólo máximo 3veces durchlaufen. Wenn z.B kein ?
en el Texto disponible es, incluso sólo 2veces.
El zweite Bucle puede ser se sowieso schenken. War una Denkfehler meinerseits.
KompilierenMarcaSeparación
Translate$(Text$,|,
)e>

reicht sí ya.
Womit Yo entonces en fünf Zeilen bin y evtl. weniger Durchläufen.
Außerdem finde Yo esta RegEx-Sachen irgendwie fresco
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
23.11.2007  
 



ok, testen! Steilvorlage para una TestSkelett: [...]  (simplemente en el perfproc el eintragen qué a testen es)

Wäre doch echt interessant...

Aber el Coolnessfaktor es tatsächlich unübersehbar.
 
23.11.2007  
 




Thomas
Freier
Toll!!! Ihr seid más rápido como el Schall. Vorhin war hier Stille y yo habe mich en el Búsqueda después de Software gemacht. Werde el Tips morgen ausprobieren.
Jörg du hast bastante, lo son Problemas, el viele interés könnten.
 
Gruß Thomas
Windows XP SP2, XProfan X2
23.11.2007  
 




Thomas
Freier
So, Yo mußte lo todavía ausprobieren. Entweder mach Soy un Fehler, oder mi Solución ha el wenigsten.
Anstoß el Aktion: el Intento, Un Zeitungsseite como PDF erhältlich, se vorlesen que se. El todo Página es kein Problema, dass kann Adobe auch. Aber möchte Yo sólo una Artikel lesen oder todavía una vez vorlesen dejar, así va el no. Und wer möchte ya todos Mostrar hören!
In el Anwendung puede Programa sólo en Tasten gesteuert voluntad a a Scannen, aber soweit bin Todavía no.
Zum Einsatz kommt una alter Laptop con 800*600 Auflösung.
Im Anhang auch una de Adobe erzeugte Textdatei (LN-Adobe.txt). Wobei Adobe una fehlende Struktur, en Zeitung wußten el nada qué darunter a verstehen es, bemängelt y luego zeilenweise encima mehrere Blöcke el Texto producido. Grrrrr!

1.345 kB
Hochgeladen:23.11.2007
Ladeanzahl114
Descargar
 
Gruß Thomas
Windows XP SP2, XProfan X2
23.11.2007  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

2.477 Views

Untitledvor 0 min.
RudiB.26.04.2022
Ostfriesenjack11.08.2021
Georg Teles07.07.2021
Erasmus.Herold09.10.2019
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie