gpt4 book ai didi

Java REGEX - 无法删除标签内的内容

转载 作者:行者123 更新时间:2023-11-30 06:49:30 24 4
gpt4 key购买 nike

这是我的输入文本:

[QUOTE=SynapseBreak;104047835]Armchio de dragon is satki dragon lai de leh

[URL="https://play.google.com/store/apps/details?id=com.shiportal.hwzreader&referrer=utm_source%3Dsignature%26utm_medium%3Dforum"]Sent from 權志-龍 using GAGT[/URL][/QUOTE]
why satki ? tell me :s13:

[QUOTE=articated;104047854]I not sad lah
U happy i happy kym

Just for fun loh :s12:
[ms]自從我變成了狗屎,就再也沒有人敢踩在我頭上了 HardwareZone Forums app[/ms][/QUOTE]
today arti jin sweet make me happy :s12:

[QUOTE=Iandao;104047967]Gg mbs now...[/QUOTE]
go there jiak simi ??

我正在尝试删除 [QUOTE] [/QUOTE] 标签内的所有内容以及标签本身。

我希望输出为:

why satki ? tell me :s13: today arti jin sweet make me happy :s12: go there jiak simi ??  

我试过的代码是:

string.replaceAll("\\[QUOTE.*\\[/QUOTE\\]", "")

最佳答案

请注意,只有当输入不包含嵌套的 [QUOTE] 标记时,您才可以对您的模式使用以下修复。

正则表达式中的 . 不匹配换行符,并且 .* 过于贪婪,即匹配最后一次出现的 [/QUOTE ] 在一行/字符串中。

使用惰性点匹配与 Pattern.DOTALL 内联修饰符(嵌入标志选项)(?s) 将强制 . 到匹配任何字符:

"(?s)\\[QUOTE=.*?\\[/QUOTE\\]" 
^^^^ ^^^

参见 this regex demo .

或者,展开惰性点(使模式更快地找到匹配项):

"\\[QUOTE=[^\\[]*(?:\\[(?!/QUOTE\\])[^\\[]*)*\\[/QUOTE\\]"

参见 this regex demo .

Java demo :

String pat = "\\[QUOTE=[^\\[]*(?:\\[(?!/QUOTE])[^\\[]*)*\\[/QUOTE]";
String str = "[QUOTE=SynapseBreak;104047835]Armchio de dragon is satki dragon lai de leh\n\n[URL=\"https://play.google.com/store/apps/details?id=com.shiportal.hwzreader&referrer=utm_source%3Dsignature%26utm_medium%3Dforum\"]Sent from 權志-龍 using GAGT[/URL][/QUOTE]\nwhy satki ? tell me :s13:\n[QUOTE=articated;104047854]I not sad lah\nU happy i happy kym\n\nJust for fun loh :s12:\n[ms]自從我變成了狗屎,就再也沒有人敢踩在我頭上了 HardwareZone Forums app[/ms][/QUOTE]\ntoday arti jin sweet make me happy :s12:\n\n[QUOTE=Iandao;104047967]Gg mbs now...[/QUOTE]\ngo there jiak simi ??'";
String res = str.replaceAll(pat, "");
System.out.println(res);
// => why satki ? tell me :s13:
//
// today arti jin sweet make me happy :s12:
//
//
// go there jiak simi ??'

关于Java REGEX - 无法删除标签内的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42665270/

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