Created
September 27, 2013 04:01
-
-
Save ivanbrennan/6723925 to your computer and use it in GitHub Desktop.
Tweet shortening!
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
subs = {"to" => "2", "two" => "2", "too" => "2", | |
"for" => "4", "four" => "4", "be" => "b", | |
"you" => "u", "at" => "@", "and" => "&"} | |
def string_shortener(str, subs) | |
punks = [" ", ".", "?", "!", ","] | |
current_word = "" | |
shortened_str = "" | |
return str if str.length <= 140 | |
str.each_char do |char| | |
if !punks.include?(char) | |
current_word += char | |
else | |
shortened_word = (subs[current_word] || current_word) | |
shortened_str += (shortened_word+char) | |
current_word = "" | |
end | |
end | |
return shortened_str[0,140] if shortened_str.length > 140 | |
shortened_str | |
end | |
tweet1 = "Hey guys, can anyone teach me how to be cool? I really want to be the best at everything, you know what I mean? Tweeting is super fun you guys!!!!" | |
tweet2 = "OMG you guys, you won't believe how sweet my kitten is. My kitten is like super cuddly and too cute to be believed right?" | |
tweet3 = "I'm running out of example tweets for you guys, which is weird, because I'm a writer and this is just writing and I tweet all day. For real, you guys. For real." | |
tweet4 = "GUISEEEEE this is so fun! I'm tweeting for you guys and this tweet is SOOOO long it's gonna be way more than you would think twitter can handle, so shorten it up you know what I mean? I just can never tell how long to keep typing!" | |
tweets = [tweet1, tweet2, tweet3, tweet4] | |
def print_short_tweets(tweets, subs) | |
tweets.each do |tweet| | |
puts string_shortener(tweet, subs) | |
end | |
end | |
print_short_tweets(tweets, subs) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment