Мне нужно сопоставить строки с этим форматом 5-29-2014 3-24-01 PM
. другим способом 5-29-2014 h-MM-SS tt
Здесь 5-29-2014
часть никогда не меняется и 3-24-01 PM
будет меняться.
Так что некоторые соответствующие строки похожи на
Это то, что я пробовал до сих пор, и это не сработало
^5-29-2014 (?:(?:([01]?\\d|2[0-3]):)?([0-5]?\\d):)?([0-5]?\\d)(\\s*[ap]m?)$
Любой может предложить для этого регулярное выражение?
Вот то, что вы ищете;
5-29-2014 (1[0-2]|[1-9])-([0-5]?[0-9])-([0-5]?[0-9]) (AM|PM)
И вы можете видеть это в действии здесь.
^5-29-2014 (?:0?[1-9]|1[0-2])-[0-5]\d-[0-5]\d\s*[AP][M]$
5-29-2014 (\d+)-(\d+)-(\d+) (AM|PM)