BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

[GELÖST] Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Alles zur Programmierung im LibreOffice.
Antworten
Lienucks
Beiträge: 20
Registriert: Mo 17. Sep 2012, 21:27

[GELÖST] Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von Lienucks » Fr 6. Dez 2019, 21:30

Hallo zusammen!
Mit einem Makro würde ich gerne einen gefundenen Kleinbuchstaben, der unmittelbar nach einem Punkt steht, durch seinen Großbuchstaben ersetzen, also a durch A und z durch Z.
Suchen nach „\.[a-zäöü]“ kann ich.
Aber wie mache ich aus dem gefunden Buchstaben den entsprechenden Buchstaben im ReplaceString?
Wie kann man auf einen mit „\.([a-zäöü])“ gefundenen Teilstring zugreifen und ihn verändern?
Vielen Dank im Voraus!
Lienucks
Zuletzt geändert von Lienucks am Sa 11. Jan 2020, 11:28, insgesamt 1-mal geändert.

mikele
Beiträge: 1642
Registriert: Mo 1. Aug 2011, 20:51

Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von mikele » Sa 7. Dez 2019, 17:38

Hallo,
ich wüsste nicht, dass die üblichen Stringfunktionen von Basic reguläre Ausdrücke verarbeiten.
Folgendes sollte dein Problem lösen:

Code: Alles auswählen

	'Eingangstext
	sText="edd.ade.A.-.."
	aTeile=split(sText,".")
	for i=1 to ubound(aTeile())
		aTeile(i)=ucase(left(aTeile(i),1)) & mid(aTeile(i),2)
	next
	'Ergebnis
	sText=join(aTeile,".")
Gruß,
mikele

Lienucks
Beiträge: 20
Registriert: Mo 17. Sep 2012, 21:27

Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von Lienucks » Mo 9. Dez 2019, 22:19

Hoppla! Das sieht ja kompliziert aus. Aber herzlichen Dank!!
Ich werde mal versuchen, etwas draus zu machen, und melde mich in ein paar Tagen wieder.
Und dann bin ich gespannt, wie das mit einem Text mit einer Viertelmillionzeichen in einer Variablen funktioniert.
Lienucks

musikai
Beiträge: 262
Registriert: Do 14. Mai 2015, 17:53

Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von musikai » Di 10. Dez 2019, 12:36

Lienucks hat geschrieben:
Mo 9. Dez 2019, 22:19
Und dann bin ich gespannt, wie das mit einem Text mit einer Viertelmillionzeichen in einer Variablen funktioniert.
Ja, das wird spannend. ;) Limit einer Variable ist 65.535 Zeichen.

Code: Alles auswählen

Sub SimpleSearch2
oDescriptor = ThisComponent.createSearchDescriptor()
oDescriptor.SearchRegularExpression=True
oDescriptor.SearchCaseSensitive = True
oDescriptor.SearchString = "\.[a-zäöü]"
oFoundAll = ThisComponent.findAll(oDescriptor)
msgbox oFoundAll.getCount()
For n = 0 to oFoundAll.getCount()-1
oFound = oFoundAll.getByIndex(n)
oFound.setString(ucase(oFound.getString()))
Next
End Sub
Win7 Pro, Sibelius 7.1.3, Lubuntu 15.10, LibO 4.4.7, OO 4.1.3
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html

Lienucks
Beiträge: 20
Registriert: Mo 17. Sep 2012, 21:27

Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von Lienucks » Mo 16. Dez 2019, 21:47

Das macht Hoffnung- herzlichen Dank!
Leider komme ich derzeit nicht dazu, das auszuprobieren.
Aber ich werde Rückmeldung geben, ob es mein Problem löst!
Bis dann!
Lienucks

Lienucks
Beiträge: 20
Registriert: Mo 17. Sep 2012, 21:27

Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von Lienucks » Do 19. Dez 2019, 20:42

Das Skript von musikai funktioniert wunderbar! Mein Problem ist gelöst - herzlichen Dank!!!
Lienucks

Mau
! Supporter - Spende !
Beiträge: 438
Registriert: Do 14. Feb 2013, 19:37

Re: Mit Makro Kleinbuchstaben durch Großbuchstaben ersetzen

Beitrag von Mau » Do 26. Dez 2019, 14:17

Hallo Lienucks,

dann bearbeite deinen ersten Eintrag zu dem Thema:
Setze vor das Thema den Vermerk [GELÖST] und schicke den Eintrag so noch einmal ins Forum ab.

Gruß,
Mau

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten