gpt4 book ai didi

java - 在java中使用正则表达式查找句子中的重复模式

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:22:33 26 4
gpt4 key购买 nike

我想在以下句子中使用 java 中的正则表达式查找重复模式:

用户名|s:5:"derick256";privilege|s:5:"derick542";premium|s:5:"derik542";

我需要提取以下内容,可能还有更多内容,因此我需要一个易于扩展的解决方案...

  1. 用户名 derick256
  2. 特权 derick 542
  3. 高级 derik542

这是我的代码...

String re1="((?:[a-z][a-z0-9_]*))"; // Variable Name 1
String re2=".*?"; // Non-greedy match on filler
String re3="(?:[a-z][a-z0-9_]*)"; // Uninteresting: var
String re4=".*?"; // Non-greedy match on filler
String re5="((?:[a-z][a-z0-9_]*))"; // Variable Name 2

Pattern p = Pattern.compile(re1+re2+re3+re4+re5,Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
Matcher m = p.matcher(strLine);
if (m.find()){
String word1=m.group(1);
String word2=m.group(2);
System.out.print("("+word1.toString()+")"+"("+word2.toString()+")"+"\n");
}

但我只有用户名derick256。任何人都可以帮助我理解错误。

最佳答案

if(m.find()) 更改为 while(m.find())

关于java - 在java中使用正则表达式查找句子中的重复模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10348322/

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