gpt4 book ai didi

Java浏览器,动态字符串匹配器模式

转载 作者:行者123 更新时间:2023-12-01 10:37:15 24 4
gpt4 key购买 nike

我有以下代码,它使用特定的字符串并使用匹配器和模式来绘制链接,我还有一个将 html 代码作为字符串返回的方法,我的问题是我不知道如何调用它,所以当以下方法运行时,它使用动态字符串而不是静态字符串,我尝试在搜索中使用动态字符串名称,但它给了我一个错误,说它无法编译,因为我尝试使用动态字符串而不是静态类,任何提示或帮助将不胜感激,如果您需要我的任何其他类和/或方法,请随时询问。

String stringToSearch = "<a>www.google.com</a> ";


Pattern p = Pattern.compile("<a>(\\S+)</a>");
Matcher m = p.matcher(stringToSearch);


if (m.find())
{

String codeGroup = m.group(1);


System.out.format("'%s'\n", codeGroup);
}

}
}

最佳答案

这并不是一个真正的“设计模式”问题,它更多地与了解如何将参数正确地传递到方法中有关。

Pattern.compile(String)方法接受一个字符串作为输入。该字符串不必是常量。您可以将该字符串作为参数传递,我什至将其放入“helper”方法中来演示这一点。

public public void someMethod(){
String stringToSearch = "<a>www.google.com</a> ";
String matchPattern = "<a>(\\S+)</a>";

if (doesMatch(matchPattern,stringToSearch)){
String codeGroup = m.group(1);
System.out.format("'%s'\n", codeGroup);
}
}

public static boolean doesMatch(String pattern, String stringToSearch){
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(stringToSearch);
return m.find();
}
<小时/>

向您展示我认为您的意思...

{

// code...

String stringToSearch = getContent(); //might have parameters here or not
String matchPattern = "<a>(\\S+)</a>";

if (doesMatch(matchPattern,stringToSearch)){
String codeGroup = m.group(1);
System.out.format("'%s'\n", codeGroup);
}
}

public static boolean doesMatch(String pattern, String stringToSearch){
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(stringToSearch);
return m.find();
}

关于Java浏览器,动态字符串匹配器模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34597462/

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