Input string must a date in format “Year-Month-Day”.
If a date is incorrect one (e.g., month is greater than 12), an error is returned.
Special case: if “Day” is greater than the number of days in a month, but it is between 1 and
31, the day is set to the last day of the month. Example, “2019-02-30” becomes “2019-02-28”.
Parse a string as a priority, returns an error if the string is not a valid priority.
A string must be a capital Latin letter enclosed in parentheses.
Replaces a word with another one. If new
is empty, it removed the old value.
A word is a group of characters between spaces(start and end of the string are virtual spaces).
Split tag into its name and value if possible.
Input string must be a correct tag: “name:value”, where name contains only alpha-numeric
characters(Unicode letters are supported), and value is a non-empty string.
If a string is incorrect tag, the function returns None.