gpt4 book ai didi

java - 用正则表达式和 replaceAll 替换 Java 中的字符串

转载 作者:行者123 更新时间:2023-11-30 07:20:53 25 4
gpt4 key购买 nike

有没有一种简单的解决方案可以通过在 Java 中使用正则表达式来解析 String

我必须改编一个 HTML 页面。因此我必须解析几个字符串,例如:

href="/browse/PJBUGS-911"
=>
href="PJBUGS-911.html"

字符串的模式只是对应于 ID 不同(例如 911)。我的第一个想法是这样的:

String input = "";
String output = input.replaceAll("href=\"/browse/PJBUGS\\-[0-9]*\"", "href=\"PJBUGS-???.html\"");

我想替换除 ID 以外的所有内容。我该怎么做?

如果有人能帮助我就太好了:)

最佳答案

您可以 capture与您的模式匹配的子字符串,使用括号。然后你可以在替换中使用捕获的东西 $n 其中 n 是括号组的数量(从左到右计算左括号)。对于您的示例:

String output = input.replaceAll("href=\"/browse/PJBUGS-([0-9]*)\"", "href=\"PJBUGS-$1.html\"");

或者如果你想:

String output = input.replaceAll("href=\"/browse/(PJBUGS-[0-9]*)\"", "href=\"$1.html\"");

关于java - 用正则表达式和 replaceAll 替换 Java 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13689860/

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