vi Experten gesucht - Substitute Befehle

_mclaren_

Lieutenant
Registriert
Dez. 2006
Beiträge
909
Hallo!

Bin im vi noch nicht wirklich sehr Fit und hab eine Aufgabe zu Lösen bei der ich nun nicht mehr weiterkomme. Wir haben den einfachsten Substitute Befehl besprochen und nichts weiter dies bezüglich. Nun bin ich auf der Suche nach einen hilfreichen Skriptum bzw einer Hilfestellung.

i
Kommandos:

Bin für jede Hilfestellung und Erklärung dankbar!

also zum Beispiel, wo findet man eine Liste wo steht wie man ^M usw. erzeugt (STRG+V ENTER) das kam mir durch zufall unter und konnte ich erfolgreich anwenden.


Danke lg
 
Zuletzt bearbeitet:
Häng einfach mal die Datei an, damit wir sehen worum es geht.

zu f)
:set autoindent oder :set ai sw=4 (Einrückungen mit vier Leerzeichen)
zum ausmachen :set noai
Mit << oder >> nach links oder rechts verschieben.

zu g)
Möglichkeit 1) :%s/a/zaehler/gc


Die andere scheitern bei mir an den regulären Ausdrücken.
 
Zuletzt bearbeitet:
Hallo!

Es gibt keine wirkliche Datei ... wir sollen ein C Programm nehmen und halt die entsprechenden Befehle dafür konstruieren. Ich habe bisher einfach im vi ein Paar Zeilen getippt die für die Aufgabe wesentlich waren, aber nicht ein komplettes Programm

werd mir deine Vorschläge gleich mal anschauen, danke!!
das f sieht ja sehr kryptisch aus *g*


was bedeutet den das gc? g alleine ist global und das c?

Danke!
 
Zuletzt bearbeitet:
:[Bereich]s/[zu ersetzen]/[durch ersetzen]/Optionen

:%s/a/zaehler/gc

% = ganzes Dokument
s = substitute
a = zu erszetzen
zaheler = durch ersetzen
g = global
c = confirmation

Vielleicht hild das hier ein wenig weiter klick.

Aber die Teilaufgaben sind gar nicht so leicht, da schon solides Wissen über reguläre Ausdrücke verlangt wird.
 
Zuletzt bearbeitet:
danke!

hab nun das mal probiert mit a und zaehler ersetzen, das Blöde hier scheint zu sein, das man händisch alles durchkorrigieren muss und man mitschauen muss wo befind ich mich gerade weil optisch wird es nicht gezeigt.

Aber ich bin grad auf eine Automatisierte Lösung gekommen

:%s/\H[a]/zaehler/g

was mich allerdings verwirrt ist, dass ich eigentlich :%s/\h[a]/zaehler/g nehmen wollte, aber da kam genau das verkehrte heraus.

Lt. der Seite http://www-user.tu-chemnitz.de/~hot/VIM/regexp.html bedeutet

\h Zeichen am Wortanfang (head of word character, [A-Za-z_])
\H kein Zeichen am Wortanfang (non-head of word character, [^A-Za-z_])

also müsste es doch ein (kleines h) \h sein ?!

EDIT: ok ganz sauber ist es nicht, wenn ich nun das Wort "aber" oder so hab, wirds mir trotzdem ersetzt *argl* :/
 
Was du suchst ist warscheinlich das hier:

:%s/\<a\>/zaehler/g

Wie gesagt, das meiste ist das geschickte kombinieren von regular expressions und da gibt man sehr leicht auf, da es nach 5 Minuten wieder vergessen ist.
 
aaah mit dem hab ich auch schon herumtan, allerdings \a> statt \> *gr*g*

mh ja, alles wird man sich kaum merken wenn man es selten anwendet aber das wäre etwas das ich ma sogar merken könnt *g*

danke, danke, danke :)
vl find ich bei den anderen ja nun auch noch ansätze *g*
 

Ähnliche Themen

Zurück
Oben