我正在尝试编写一个RegEx,它将捕获字符串“csv,csv,csv,csv”中逗号分隔的'csv'实例,并替换为“xml”。
所以我的输出是“csv,xml,xml,csv”。
我遇到的问题是我的RegEx只捕获csv的第一个实例,并且因为第一个匹配结束时的'逗号'也是第二个匹配的第一个分隔符,所以它不会被捕获。
RegEx =“,csv,”(非常简单的例子)。
示例2:
RegEx =“(,狗,)”
输入“狗,狗,狗,狗”
输出“狗,猫,猫,狗”
编辑:我找到了我想要的东西,使用前瞻和后瞻。 RegEx =“(?< =,)dog(?=,)”就行了。
答案 0 :(得分:0)
答案 1 :(得分:0)
使用环顾四周,断言,但不要消耗:
String replaced = str.replaceAll("(?<=,)csv(?=,)", "xml");