Parse string and return :class:`.WIPV4Address` object if an IP address is specified,
		:class:`.WFQDN` if domain name is specified and None if the string is empty.

		:param address: string to parse
		:return: WIPV4Address or WFQDN or None

def parse_address(address):
		""" Parse string and return :class:`.WIPV4Address` object if an IP address is specified,
		:class:`.WFQDN` if domain name is specified and None if the string is empty.

		:param address: string to parse
		:return: WIPV4Address or WFQDN or None
		"""

		if len(address) == 0:
			return None

		try:
			return WIPV4Address(address)
		except ValueError:
			pass

		try:
			return WFQDN(address)
		except ValueError:
			pass

		raise ValueError('Unable to parse address string. It must be an IP address or FQDN')