作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望将文件中的一行与带有占位符的字符串进行比较。
该文件包含计算机(Windows 和 Linux 计算机)中使用的 COM
、ACM
、USB
端口的列表,我想要将 COMx
、ACMx
、USBx
添加到 LinkedList,其中 x 是计算机分配的端口号。
我在做:
// LinkedList<string> addr instantiated before.
// This if structure is inside a while loop reading each line of the file
// and storing it to line that breaks when line = null. Line is set to
// lower case for processing purposes.
if(line.contains("com") || line.contains("acm") || line.contains("usb"))
{
addr.add(line);
}
它将添加COM6
和COMBluetooth设备
。我正在寻找一种方法来获取 COM6
而不是 COMBluetooth Device
端口,或者实际上任何其他未编号的端口,然后添加此 COMx
子字符串添加到地址列表中。
我被引导相信我可以使用格式化占位符来做到这一点,但是我如何将其集成到这个 if
语句中?如果不是占位符,我应该如何去做呢?
最佳答案
您可以尝试使用此方法:
private static boolean getResult(String line) {
Pattern p = Pattern.compile("(COM|ACM|USB)\\d");
Matcher m = p.matcher(line);
return m.find();
}
如果您需要添加更多端口,可以添加(COM|ACM|USB|nextPort|next|next)
等
关于java - 如何将文件行与带有占位符的字符串进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55895475/
我是一名优秀的程序员,十分优秀!