Java 什么样的正则表达式应该只替换两个引号? 亚马逊网站上的Leriya Fashion products。搜索中的“Leriya Fashion”。
我只想替换这个词中的引号(“Leriya Fashion”)。我尝试过许多正则表达式,但它们替换了所有引号。现在我们知道这个词,但如果我们不知道实际的词怎么办Java 什么样的正则表达式应该只替换两个引号? 亚马逊网站上的Leriya Fashion products。搜索中的“Leriya Fashion”。,java,regex,Java,Regex,我只想替换这个词中的引号(“Leriya Fashion”)。我尝试过许多正则表达式,但它们替换了所有引号。现在我们知道这个词,但如果我们不知道实际的词怎么办 “|[a-z]$$$”$ “|”+\s 我想用空白或空格代替它。主要的问题发生在我们将xml转换为json时。因为json将这个双引号作为值,但实际上它不是一个值,它只是一个双引号的名称。所以对我来说,用json中的空白替换这个引号是非常困难的,这就是为什么我试图在xml文件中替换它。如果它只是“Leriya Fashion”,那么为什么
“|[a-z]$$$”$
“|”+\s
“Leriya Fashion”
,那么为什么不直接使用它呢
我假设您只想删除引号。Lambda replaceAll
str = str.replace("\"Leriya Fashion\"", "Leriya Fashion");
这将替换非HTML属性(=“…”
)中任何文本的所有引号。
危险的假设是引号只能成对出现。您想用什么来代替它?试试这个,检查它在哪里覆盖了确切的正则表达式,我想用空白或space@umang你在问题中从来没有提到这两点。
str = str.replace("\"Leriya Fashion\"", "Leriya Fashion");
str = Pattern.compile("(.)\"([^\"\r\n]*\"").matcher(str)
.replaceAll(mr -> mr.group(1).equals("=") ? mr.group()
: mr.group(1) + mr.group(2));