Мне было интересно, как лучше всего разобрать имена "HOST" из строк соединения оракула. Вот пример строки подключения:
Данные
Источник = (ОПИСАНИЕ = (ADDRESS_LIST = (АДРЕС = (ПРОТОКОЛ = TCP) (HOST = MyHost) (PORT = MyPort))) (CONNECT_DATA = (SERVER = ПОСВЯЩЕННЫЙ) (SERVICE_NAME = MyOracleSID))) * * 1004
И у меня это в String
. Каков наилучший способ вернуть "MyHost". Также было бы неплохо, если бы это работало для строк двойного соединения, например:
((Data
Источник = (ОПИСАНИЕ = (ADDRESS_LIST = (АДРЕС = (ПРОТОКОЛ = TCP) (HOST = MyHost1) (PORT = MyPort1))) (CONNECT_DATA = (SERVER = ПОСВЯЩЕННЫЙ) (SERVICE_NAME = MyOracleSID1)))) (Данные
Источник = (ОПИСАНИЕ = (ADDRESS_LIST = (АДРЕС = (ПРОТОКОЛ = TCP) (HOST = MyHost2) (PORT = MyPort2))) (CONNECT_DATA = (SERVER = ПОСВЯЩЕННЫЙ) (SERVICE_NAME = MyOracleSID2)))))
Возвращает «MyHost1» и «MyHost2».
Попытка написать метод, который принимает строку подключения и выплевывает хост / хосты в список строк массива.