Created
December 18, 2013 10:15
-
-
Save ichistmeinname/8020065 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#nummern = IO.read("contacts.txt"); | |
class Contact | |
def initialize(name, phone) | |
@name = name; | |
@phone = phone; | |
end; | |
def to_s() | |
name = "Name: " + @name; | |
phone = "PhoneNo: " + @phone.to_s(); | |
return(name + "\n" + phone + "\n"); | |
end; | |
def name | |
return @name; | |
end; | |
def phoneNumber | |
return @phone; | |
end | |
end | |
def contactsToArray(filename) | |
array = []; | |
contacts = IO.read(filename); | |
# Benutze () als Gruppierung für späteren Zugriff | |
searchContact = Regexp.new("([a-zA-Z]*): ([0-9]*), [0-9]*"); # / / | |
matchPos = contacts =~ searchContact; | |
while matchPos != nil do | |
# array = array + [[$1, $2]]; | |
# statt des mehrdimensionalen Arrays verwenden wir eine Objekt der Klasse `Contact`, | |
# um später den Zugriff auf einzelne Komponente zu vereinfachen | |
array = array + [Contact.new($1, $2)]; | |
# $1 - erste Gruppierung, $2 - zweite Gruppierung | |
contacts = $'; # Reststring | |
matchPos = contacts =~ searchContact; | |
end; | |
return array; | |
end; | |
contacts = contactsToArray("contacts.txt"); | |
for pos in 0..contacts.size-1 | |
puts(contacts[pos].to_s); | |
end; | |
puts("\n"); | |
# Zugriff auf den Namen der ersten Person und die Telefonummer der zweiten Person in der Liste | |
puts(contacts[0].name + "\n" + contacts[1].phoneNumber); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Frank; 7277, 44 | |
Fabian: 7262, 30 | |
Karl: 6792, 56 | |
Elfriede: 3392, 180 | |
Egon: 12345, 44 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment