java – 从字符串中检索单词
发布时间:2020-12-15 04:59:47 所属栏目:Java 来源:网络整理
导读:我有这条线: (ADDRESS = (PROTOCOL = XXX)(HOST = YYY)(PORT = ZZZ)) 我需要检索主机名称,在这种情况下是YYY. 我不知道它是用小写还是大写,甚至是它们之间的混合. 所以我通过line.toUpperCase()将整行切换为大写,然后根据HOST =分割行,我选择字符直到我得到
我有这条线:
(ADDRESS = (PROTOCOL = XXX)(HOST = YYY)(PORT = ZZZ)) 我需要检索主机名称,在这种情况下是YYY. 我不知道它是用小写还是大写,甚至是它们之间的混合. 我确信有更好的方法可以做到这一点.任何提示将不胜感激. 我的代码: String host = ""; line = line.toUpperCase(); int i = line.indexOf("HOST"); while(line.charAt(i)!='=') i++; while(line.charAt(i)!=')') { i++; if(line.charAt(i)!=')'&&line.charAt(i)!=' ') host = host + line.charAt(i); } return host; 解决方法
尝试
String s= "(ADDRESS = (PROTOCOL = XXX)(HOST = YYY)(PORT = ZZZ)) }"; String host = s.replaceAll("^.+((HOST|host) *= *(.+?)).+$","$2"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |