gpt4 book ai didi

java 堆栈搜索

转载 作者:太空宇宙 更新时间:2023-11-04 07:36:34 25 4
gpt4 key购买 nike

我有一个堆栈,其中包含以下对象:

barcode \t date \t some_action

例如:

IP400H24 \t 20130527163520 \t in

日期的格式为 yyyymmddhhmmss

我想获取堆栈的第一个元素并搜索堆栈,直到第一次找到具有相同条形码的另一个对象。

我正在尝试一些东西,但它不正确:

// Get the barcode from the first object
String line = lifo.pop().toString().split("\t);
String barcode = line[0];
// Search for that barcode

while(!lifo.empty()) {
String next_line = lifo.pop().toString().split("\t);
String next_barcode = next_line[0];

if (next_barcode.equals(barcode))
//FOUND IT
else
//NOT FOUND
}

这有什么问题吗?

You are right.. I declare the sentence wrong.. I maybe need a break.. Thank you for you answers...

最佳答案

使用正则表达式进行匹配

尝试这个正则表达式:

IP400H24 \\t \d+ \\t [a-z]+

您可以使用串联将 IP400H24 替换为 barcode:

String matcher = barcode += "\\t \d+ \\t [a-z]+";

您可以将其与 next_line.matches() 一起使用,例如:

if(next_line.matches(barcode + "\\t \d+ \\t [a-z]+")) {

}

相关错误

请注意,检索行时出现错误:

String line = lifo.pop().toString().split("\t);

应该是

String line = lifo.pop().toString().split("\\t");

关于java 堆栈搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16774536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com