Wie Teilzeichenfolge einer gegebenen Zeichenfolge bis zum ersten auftreten des angegebenen Zeichens?
Die Frage, ob für perl.
Zum Beispiel, wenn ich "hello.world"
und das angegebene Zeichen ist '.'
dann das Ergebnis ich will, ist "hello"
.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehen
perldoc -f index
:Mit
substr
:Oder mit regexp:
s/substring/substr/g
.
der regex-geben Sie die Zeichenfolge, bis der letzten - Zeit. Beachten Sie den Unterschied. Verwenden.*?
für non-greedy regex, um die gleiche Funktionalität zu erhalten.gibt Sie
hello
Andere Möglichkeit:
In den Geist der TIMTOWTDI, und die Einführung neuer features: die Verwendung des nicht-destruktive option
/r
Den gierigen
.*
Ende abschneiden, alles nach der ersten Periode, einschließlich etwaiger Zeilenumbruch-Zeichen (/s
option), behalten aber die ursprüngliche Zeichenfolge intakt und entfernen Sie die Notwendigkeit für Klammern zu verhängen, die Liste Kontext (/r
option).Zitat von perlop: