java - java中如何替换特定字符串?

标签 java regex regex-lookarounds

我有一个 CSV 文件,例如

Data
Dun&BradStreet
Dunkin & Donut

这里的数据是列的“标题”。

我使用编码和替换作为

 String encodedUrl = URLEncoder.encode(data[i], "UTF-8");
 String data = encodedUrl.replaceAll("%2B","+");

期望的结果

Data
Dun&BradStreet
Dunkin+%26+Donut

输出

 Data
 Dun%26BradStreet
 Dunkin+%26+Donut

当'&'存在时,如果没有空格,如何保留'&'? 任何帮助表示赞赏。提前致谢。

最佳答案

如果&前后有一次或多次空格,可以尝试这个。

这里\\s+代表一次或多次空格。了解更多关于 Java Regex Pattern .

String str = data[i].replaceAll("\\s+&\\s+", "+%26+");

关于java - java中如何替换特定字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22889942/

相关文章:

java - 树遍历和一阶函数

java - 无法在 XAMPP 中运行 mysqldump

regex - 按句子中的最后一个单词拆分列

ruby-on-rails - 如何允许正则表达式为空?

正则表达式在匹配后的下一行中选择名称(直到...)

java - REGEX,删除空格和所有其他字符

java - Spring Boot安全性在https之后阻止静态资源

java - JAXB2基础知识可合并插件: Setting a custom Merge Strategy

regex - notepad++ 中的正则表达式用于修剪数据/重复项

java - 生成一个 Java 可用的正则表达式,在精确位置否定单词