Angenommen, ich habe eine Zeichenfolge '[email protected]'
. Ich möchte die Zeichenfolge vor und nach "@" in 2 separaten Strings speichern. Was wäre die einfachste Methode, um das Zeichen "@" oder andere Zeichen in der Zeichenfolge zu finden?Suchen eines bestimmten Zeichens in einer Zeichenfolge in Matlab
Antwort
Ich verwendete stattdessen strtok und strrep von Matlab.
Für „einfachste“,
>> email = '[email protected]'
email =
[email protected]
>> email == '@'
ans =
Columns 1 through 13
0 0 0 0 0 0 0 1 0 0 0 0 0
Columns 14 through 19
0 0 0 0 0 0
>> at = find(email == '@')
at =
8
>> email(1:at-1)
ans =
johndoe
>> email(at+1:end)
ans =
hotmail.com
etwas kompliziert mehr sein würde, wenn Sie mit mehr als ein Zeichen für etwas gesucht haben, oder Sie waren nicht sicher, ob es genau ein @ war, und dass Fall MATLAB hat viele Funktionen zum Suchen von Text, einschließlich regulärer Ausdrücke (siehe doc regexp
).
STRTOK und ein Index-Operation den Trick tun sollten:
address(1) = '';
TEXTSCAN funktioniert auch:
str = '[email protected]';
[name,address] = strtok(str,'@');
address = address(2:end);
Oder die letzte Zeile könnte auch sein.
str = '[email protected]';
parts = textscan(str, '%s %s', 'Delimiter', '@');
gibt ein Zellenfeld, wo Teile {1} ist 'johndoe' und Teile {2} ist 'hotmail.com'.
können Sie verwenden strread:
str = '[email protected]';
[a b] = strread(str, '%s %s', 'delimiter','@')
a =
'johndoe'
b =
'hotmail.com'
hinweis: neuere Versionen von MATLAB empfehlen die Verwendung von 'textscan' anstelle von' stread' – Amro
Wenn dieser Thread jetzt nicht vollständig aufgelistet ist, darf ich einen weiteren hinzufügen? Eine handliche perl-basierte MATLAB Funktion:
email = '[email protected]';
parts = regexp(email,'@', 'split');
Teile ist eine Zwei-Element-Zellenarray ähnliche Umsetzung des textscan MTRW. Vielleicht Overkill, aber regexp ist viel nützlicher, wenn Sie eine Zeichenfolge durch mehrere Zeichen oder Muster trennen. Der einzige Nachteil ist die Verwendung von regulären Ausdrücken, die ich nach 15 Jahren Kodierung immer noch nicht beherrsche.
+1 seltsam, dass niemand die ganze Zeit reguläre Ausdrücke erwähnt :) – Amro
- 1. Suchen eines bestimmten Zeichens in SQL-Anweisung
- 2. Entfernen eines Zeichens in einer Zeichenfolge nacheinander
- 3. Rückwärts Suchen in einer Zeichenfolge
- 4. Anzahl der Vorkommen eines Zeichens in einer Zeichenfolge
- 5. Entfernen eines Zeichens aus einer Zeichenfolge
- 6. Entfernen eines Zeichens aus einer Zeichenfolge in C
- 7. Vergleichen eines Zeichens in einer Rust-Zeichenfolge mit Indizierung
- 8. Ändern eines Zeichens in einer Zeichenfolge mit Actionscript
- 9. Einfügen eines Zeichens am Anfang einer Zeichenfolge in SQL
- 10. Suchen und Ersetzen eines nicht druckbaren Zeichens
- 11. Suchen einer Zeichenfolge in einer Zeichenfolge
- 12. Entfernen eines bestimmten Zeichens aus einer Zeichenfolge basierend auf dem Hexadezimalwert
- 13. Transformieren eines Vektors in einer bestimmten Länge in Matlab
- 14. So suchen Sie nach einer bestimmten Zeichenfolge im Zellenfeld
- 15. Einfügen eines Zeichens vor jeder Instanz eines bestimmten Zeichens in vi
- 16. Überprüfung der Identität eines Zeichens in einer Zeichenkette an einer bestimmten Position
- 17. Ersetzen eines Zeichens durch eine neue Zeile in einer Zeichenfolge in einer Liste in Python
- 18. Rückgabe-Index aller Vorkommen eines Zeichens in einer Zeichenfolge in Ruby
- 19. Wie alle Vorkommen eines bestimmten Zeichens aus Zeichenfolge in C entfernen?
- 20. Wie LAST INSTANCE eines Zeichens aus einer Zeichenfolge entfernen
- 21. Hinzufügen eines Zeichens am Anfang und Ende einer Zeichenfolge
- 22. Count Anzahl der Vorkommen eines Zeichens in SQL-Zeichenfolge Wert?
- 23. Binärdarstellung eines Zeichens in C drucken
- 24. Konvertieren eines Zeichens in keycode
- 25. Zeiger eines Zeichens in C++
- 26. Anzahl der Vorkommen eines Zeichens in NSString
- 27. entfernen Zeichen in Zeichenfolge nach bestimmten Vorkommen
- 28. Ersetzen Sie alle Vorkommen eines Zeichens in einer Zeichenfolge in Java?
- 29. Wie löscht man alle Instanzen eines Zeichens in einer Zeichenfolge in Python?
- 30. Position eines Zeichens in einem NSString oder NSMutableString
-1. Die anderen Antworten sind hier besser, da sie Beispielcode bereitstellen. Wie haben Sie 'strtok' und' strrep' verwendet? Zeige ein Beispiel und ich werde zu +1 umdrehen. – gary
Das ist ein gutes Angebot. – Richard