Ich kann einen regulären Ausdruck in NP ++ finden under_score_case
. Ich kann TextFX in NP ++ verwenden, um die Groß- und Kleinschreibung durch Hervorheben und Auswählen zu ändern.
Wie kann ich entweder NP ++ 's Suchen / Ersetzen oder TextFX des Suchens und Ersetzens diese zusammen und konvertieren zum Aufnähen under_score_case
auf camelCase
?
Ich möchte lernen, wie man dies in NP ++ macht, ohne ein Skript zu verwenden.
Beispieleingabe:
this is_a_line
some more_data_over_here
whoop de_do_da
Gewünschte Ausgabe:
this isALine
some moreDataOverHere
whoop deDoDa
Der zu den Unterstrichen passende reguläre Ausdruck wäre _([a-z])
. Der Ersatz, von dem ich denke, dass er existiert, den ich aber nicht finden kann, ist so etwas wie _\toupper\1
.
quelle
ALL_CAPS
wirdallCaps
.Ein einfaches Suchen / Ersetzen erledigt dies in NP ++:
Finden:
[_]{1,1}([a-z])
Ersetzen:
\U$1
Sie müssen das Optionsfeld "Regulärer Ausdruck" im Ersetzen-Bedienfeld aktivieren, damit dies funktioniert.
quelle
_(.)
als Suchbegriff.(?:^|_)([a-z])
Ersetzen:\U$1$2
Normalerweise benutze ich vim selbst als Editor. Der folgende reguläre Ausdruck führt das aus, was Sie in vim versuchen:
%s/_\([a-zA-Z]\)/\u\1/g
Nach allem, was ich sagen kann ( ich habe ein bisschen mit NP ++
\u
rumgespielt ), versteht Notepad ++ das Makro in Perl Regexp nicht in Großbuchstaben . Möglicherweise können Sie dies nicht vollständig mit Notepad ++ ausführen. Hoffentlich wird mir jemand das Gegenteil beweisen und dir den Tag versüßen.quelle
Sie können dies mit einem Schritt in Notepad ++ tun, was wahrscheinlich nützlicher ist:
Das einzige Problem dabei ist, dass Sie wissen müssen, wie lange die Under Score maximal anwesend sein kann und wie die Saite endet. Im obigen Beispiel ersetze ich PHP-Dateinamen durch camelCase, da ich weiß, dass der Under Score nicht mehr als dreimal vorhanden sein kann. Weniger ist kein Problem.
quelle
Mein persönlicher Favorit ist sed. Es ist blitzschnell:
Sie können die Option -i verwenden, um das Ersetzen einer Datei durchzuführen, die Sie gerade bearbeiten, und N ++ sollte die Änderung übernehmen.
Dadurch werden auch alle Unterstriche gelöscht, wie dies bei einigen der oben genannten Lösungen der Fall ist. Das kann behoben werden, wenn dies ein Problem ist.
quelle
Konvertieren Sie den Snake CaseIch könnte dies mit Notepad ++ tun, indem Sie die folgenden Schritte ausführen.
Konvertieren Sie die Eingabe in Schlangenbuchstaben in Kleinbuchstaben, falls nicht bereits in Kleinbuchstaben
_([a-z])
OR_(.)
\u\1
Eingabe ersetzenquelle
Ich arbeite mit Notepad ++ 7.3. Ich hatte das gleiche Problem und ich habe Folgendes getan:
Und hat funktioniert!
quelle
We use the bean_counter variable, which was Fred's idea
würde geändertwe use the beanCounter variable, which was fred's idea
(Kleinschreibung der Buchstaben , die bereits aktiviert wurden)? Dies scheint unbefriedigend.+
). Leider entspricht dies nun im Wesentlichen mehreren der vorherigen Antworten.Ich bin auf dieses Problem gestoßen und habe eine hervorragende Lösung gefunden
Ersetzen Sie alle Unterstriche ("_") durch Leerzeichen ("")
Ändern Sie den ersten Buchstaben jedes Wortes in einen Großbuchstaben
Ersetzen Sie alle Leerzeichen ("") durch ein leeres Leerzeichen ("")
Getan.
quelle