
Write a program to read dates from input, one date per line. Each date's format must be as follows: March 1, 1990. Any date not following that format is incorrect and should be ignored. The input ends with -1 on a line alone. Output each correct date as: 3/1/1990.
Hint: Use string[start:end] to get a substring when parsing the string and extracting the date. Use the split() method to break the input into tokens.
Ex: If the input is:
March 1, 1990 April 2 1995 7/15/20 December 13, 2003 -1
then the output is:
3/1/1990 12/13/2003
use PYTHON
starting with :
months = {
"January": 1,
"February": 2,
"March": 3,
"April": 4,
"May": 5,
"June": 6,
"July": 7,
"August": 8,
"September": 9,
"October": 10,
"November": 11,
"December": 12,
}
import re
for data in ['March 1, 1990', 'April 2 1995', '7/15/20', 'December 13, 2003', -1]:
if data == -1:
break
if re.match(r'(\w+) (\d{1,2}), (\d{4})', data) == None:
continue
output = data.split(" ")
output[0] = str(months[output[0]])
output[1] = output[1].replace(",", "")
print("/".join(output))

Trending nowThis is a popular solution!
Step by stepSolved in 4 steps with 2 images

- Suppose a String name is given in a format where the firstname and lastname are separated by a semicolon like ‘Ziaul;Hossain’ ; the general format would be ‘firstname;lastname’ (firstname and lastname can be any String). Write a program which will separate the lastname into a different string. (Hint: use a function from String class to find the position of semicolon and then take substring from that position).arrow_forwardModify the code to display the current date in the MM/DD/YYYYmode. And, display the number of hours, minutes, and seconds as well as the number of days left to the next New Year’s Day. An example of the needed output is shown in the attached picture (The values are just examples, they are not correct). Thank you. import java.util.Calendar; public class Sample{public static void main(String[] args){Calendar cal = Calendar.getInstance();int dayleft = findNewYearEve() - cal.get(Calendar.DAY_OF_YEAR);String str = "There are " + dayleft + " days left to the next New Year's Day.";System.out.println(str);} public static int findNewYearEve(){Calendar nyEve = Calendar.getInstance(); nyEve.set(nyEve.get(Calendar.YEAR), 11, 31); //days left to next New Yearreturn (nyEve.get(Calendar.DAY_OF_YEAR) + 1);}}arrow_forwardWrite a program that creates an input function to enter a string. Then use .isalpha method to find ifthe first character in the string starts with a letter or a non-letter. (Hint: use indexing and if and if notfunction). Make sure to print the two statements ‘Your string starts with a letter’ and ‘Your stringcontains a non-letter’)arrow_forward
- Write a program to read the date and average from the temps.txt file. Use a string data type for the date and a doub e average. The program should then convert the average (Fahrenheit) to Celsius. The conversion formula is subtract 32 from the average (Fahrenheit) and then multiply by five and divide by nine, e. 32) * 5/9. Output the date, the average temperature (Fahrenheit) and the Celsius temperature to a file named celsi Use the manipulators you have learned about in this chapter to format the output as shown in the sample be low and print each number value to one decimal space. 1. Identify the following parameters to complete the specification above. Input parameters? Output parameters? Constant parameters? 2. Attach the input and output of a successful execution of your program below (Hint: Use the snipping tool to take screenshots):arrow_forwardGenerate a list of 10 random numbers with values between 1 and 20, and submit the first 10 numbers as an answer to this question. (Use any random number generator). For the purpose of using them in the next questions, call these numbers A, B, C, D, . . . J Convert Aπ/B into degrees. Find the result ofa. Degrees = (A × B × C) + 180 mod 180; this is the remainder after dividing (A × B × C) + 180 by 180 b. Convert Degrees into radians, and put the answer in π notation. Calculate the measurements of the acute angles of a right triangle whose sides measure A, B, C units. Build a matrix, M, of random numbers as follows: A B C D E F G H I What is MT? Find the inverse of M, showing the steps. What is the result of M * M−1? Let V = [A B C] and W = [ D E F]. In the textbook, the dot product V • W involves an angle, alpha (α). How do you calculate alpha for this example? Let V = [A B C]. Find the cross product V • V. What can you conclude from this…arrow_forwardFor this project, you will be writing regular expressions that look for and find all instances of a date in any given string. Your program should: Find the following different formats for dates: August 2nd, 1994 august 2, 1994 08/02/1994 08/02/94 08-02-1994 Your program should be case insensitive using re.IGNORECASE Your program can only have a maximum of two different regexes. A special prize goes to those of you who can fit all of this into one regex Your program should be able to tell if the date is a valid date. For example, if the date says 99/99/99, then your program should ignore this as a date. HINT: this is not done within the regex. Try saving your dates to something like a list and going through that list after your regex runs. At the end of your program, it should print out all of the dates in the following format: mm/dd/yyyy. EX. 08/02/1994 Your program should use at least two character classes, you may need more. Feel free to make your own custom classes as well.…arrow_forward
- Asaparrow_forwardThe loop below is intended to collect all characters that occur more than once in a given string. When you try it out with a string such as “Mississippi”, you will note that that letters that occur three or more times are collected more than once. Modify the loop so that each repeated letter is collected exactly once. For example, when s is “Mississippi”, result should be “si” and not “sissii” Only allowed to edit code in the /* Your code goes here */ portion. Thanks for the help!arrow_forwardWrite a program that takes a capitalized character string (with letters ‘A’ through ‘Z’) and returns a lower-case character string. Begin with the values of r0 and r1 containing 0x46554C4C and 0x4D4F4F4E, which represent the ASCII characters of “FULL” and “MOON”, respectively. You should put the lower-case versions of these hexadecimal values in r2 and r3.arrow_forward
- Can you give me two ways to do itarrow_forwardwrite a program that inserts parentheses, a space, and a dash into a string of 10 user-entered numbers to format it as a phone number. for example 5555555555 becomes (555) 555-5555. If the user does not enter exactly 10 digits, display an error message. continue to accept user input until the user enters 999 using string builder.arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





