java - 正则表达式替换除双引号之外的所有逗号java

标签 java regex

我想使用正则表达式替换java中除双引号之外的所有逗号。我将输出除外为 \"Lee Rounded Neck, Printed\"#410.00#300.00#\"Red Blue\"#lee"

String line="\"Lee Rounded Neck, Printed\" 410.00 300.00,\"Red Blue\",lee";
    String repl = line.replaceAll("(?!\")\\,", "#");
    System.out.println("Replaced => " + repl);

但我得到 "Lee Rounded Neck# Printed" 410.00 300.00#"Red Blue"#lee

请有人在这方面帮助我

最佳答案

尝试一下,

line.replaceAll(",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)", "#");

enter image description here

关于java - 正则表达式替换除双引号之外的所有逗号java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22755023/

相关文章:

javascript - 如何在 Javascript + jquery 中创建正则表达式

javascript - 奇怪的正则表达式总是返回 true

java - 工作正则表达式在 Java 中不起作用

java - Java 小程序加载失败时如何显示消息?

java - 方法 Hibernate.createBlob() 已从 Hibernate 4.0.1 弃用并移至 Hibernate.getLobCreator(Session session).createBlob()

java - 将鼠标悬停在 jtable 单元格上时显示图像

javascript - 将表情符号与文本分开的正则表达式

java - 语法查询异常,对象无法映射

java - 将值从 Servlet 传递到 WebLogic 中的 JSF Action 方法

javascript - 正则表达式匹配 str 中的 javascript/php 函数名称