( 								# MMDDYY(YY)
	(0[1-9]|1[0-2]) 					# MM
	(
		(0[1-9]|[12]\d|3[01]) 				# DD
		(
			[12]\d{3} 				# YYYY
			|
			\d{2} 					# YY
		)
	| 							# MMxD(D)xYY(YY)
		(?P<sep1>[-\/. ])
		(0?[1-9]|[12]\d|3[01]) 				# DD|D
		(?P=sep1)
		(
			[12]\d{3}  				# YYYY
			|
			\d{2} 					# YY
		)
	)
| 								# DDMMYY(YY)
	(0[1-9]|[12]\d|3[01]) 					# DD
	(
		(0[1-9]|1[0-2]) 				# MM
		(
			[12]\d{3} 				# YYYY
			|
			\d{2} 					# YY
		)
	| 							# DDxM(M)xYY(YY)
		(?P<sep2>[-\/. ])
		(0?[1-9]|1[0-2]) 				# M|MM
		(?P=sep2)
		(
			[12]\d{3} 				# YYYY
			|
			\d{2} 					# YY
		)
	)
|
	(
		[12]\d{3} 					# YYYY
		|
		\d{2} 						# YY
	)
	( 							# YY(YY)xM(M)xD(D)
		(?P<sep3>[-\/. ])
		(0?[1-9]|1[0-2]) 				# MM|M
		(?P=sep3)
		(0?[1-9]|[12]\d|3[01]) 				# DD|D
		|
		年 						# YY(YY)年M(M)月D(D)日
		(0?[1-9]|1[0-2]) 				# MM|M
		月
		(0?[1-9]|[12]\d|3[01]) 				# DD|D
		日
		|
		년 						# YY(YY)년M(M)월D(D)일
		(0?[1-9]|1[0-2]) 				# MM|M
		월
		(0?[1-9]|[12]\d|3[01]) 				# DD|D
		일
		| 						# YY(YY)MMDD
		(0[1-9]|1[0-2]) 				# MM
		(0[1-9]|[12]\d|3[01]) 				# DD
	)
|
	( 							# MxD(D)xYY(YY)
		([1-9]|1[0-2]) 					# M
		(?P<sep4>[-\/. ])
		(0?[1-9]|[12]\d|3[01]) 				# DD|D
		(?P=sep4)
		(
			[12]\d{3} 				# YYYY
			|
			\d{2} 					# YY
		)
		| 						# DxM(M)xYY(YY)
		([1-9]|[12]\d|3[01]) 				# D
		(?P<sep5>[-\/. ])
		(0?[1-9]|1[0-2]) 				# MM|M
		(?P=sep5)
		(
			[12]\d{3} 				# YYYY
			|
			\d{2} 					# YY
		)
	)
)
