【正则表达式求助】: 寻找所有匹配

影儿 2011-09-06 05:21:07

比如:

String text = "abcdacd"

要寻找出所有的ac 匹配: a 0 c 2 ; a 4 c 5; a 0 c 5

要寻找出所有的acd 匹配: a 0 c 2 d 3 ; a 4 c 5 d 6 ; a 0 c 5 d 6

如何写正则表达式呢?
...全文
104 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
niit_jinbang 2011-09-07
  • 打赏
  • 举报
回复
我觉得获取字符串中的单个字符和位置 再进行.equals比较能好一点吧 正则表达式的话要不是很容易实现的啊
安心逍遥 2011-09-06
  • 打赏
  • 举报
回复
这个,不发表意见

各有千秋

祝楼主好运
影儿 2011-09-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 shuwei003 的回复:]
个人感觉这个不是正则所擅长的问题类型,使用循环比较更合适。
[/Quote]

确实用正则表达式似乎不太明显, 只是这里的字符 a,c,d 实际上是字符串;如果用循环写出来代码可能嵌套好几层,很难读懂, 所以我是希望寻求正则表达式的解决方案, 初步想法是:

.*?(a).*?(c).*? 利用勉强型匹配, 但是, 这样无法匹配所有的可能,只能匹配一部分情况。

还有一种想法,就是用多个正则式分别匹配一部分情况, 然后合起来可以囊括所有情况。

剑神一笑 2011-09-06
  • 打赏
  • 举报
回复
正则没办法做 至少你匹配后的字符在原字符串的下标没办法弄出来 还是要用循环
shuwei003 2011-09-06
  • 打赏
  • 举报
回复
个人感觉这个不是正则所擅长的问题类型,使用循环比较更合适。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧