java和postgresql替换多种空白字符(包括制表符、换行、空格等):

 替换多种空白字符(包括制表符、换行、空格等):

java 复制代码
// 替换所有空白字符为空
String cleanStr = input.replaceAll("\\s+", "");

// 替换所有空白字符为空格
String replaceWithSpace = input.replaceAll("\\s+", " ");
  1. 查询model_engineering_param_scheme_val 表中 psc_id = 40 且 pm_val 字段包含空格的数据;
  2. 并执行 UPDATE 语句,将这些记录的 pm_val 中的所有空格删除(替换为空字符串)。
    ✅ 第一步:查看哪些数据包含空格你可以先用 SELECT 确认目标数据:
java 复制代码
SELECT *
FROM model_engineering_param_scheme_val
WHERE psc_id = 40
  AND pm_val LIKE '% %'
ORDER BY pm_val ASC;

这个语句会列出所有 psc_id = 40 且 pm_val 包含至少一个空格的记录。

✅ 第二步:更新字段,去除所有空格使用 SQL 的 REPLACE() 函数来去掉 pm_val 中的所有空格:🔧 MySQL / SQL Server / MariaDB 支持语法:

java 复制代码
UPDATE model_engineering_param_scheme_val
SET pm_val = REPLACE(pm_val, ' ', '')
WHERE psc_id = 40
  AND pm_val LIKE '% %';

✅ 如果你还想去除其他空白字符(如制表符 \t、换行符等)可以使用正则表达式(仅限支持正则替换的数据库,例如 PostgreSQL 或 MySQL 8.0+):

🟢 MySQL 8.0+ 使用正则替换(REGEXP_REPLACE):

sql 复制代码
UPDATE model_engineering_param_scheme_val
SET pm_val = REGEXP_REPLACE(pm_val, '[[:space:]]', '')
WHERE psc_id = 40
  AND pm_val REGEXP ' ';

这会删除 pm_val 中所有的空白字符(包括空格、Tab、换行等)。

✅ PostgreSQL 示例:

sql 复制代码
UPDATE model_engineering_param_scheme_val
SET pm_val = regexp_replace(pm_val, '\s+', '', 'g')
WHERE psc_id = 40
  AND pm_val ~ ' ';

✅ 温馨提示

•✅ 建议在执行 UPDATE 之前对数据进行备份。

•✅ 可以先运行 SELECT * FROM ... WHERE psc_id = 40 AND pm_val LIKE '% %' 查看影响范围。

•✅ 如果字段中还有中文空格(全角空格 ),也需要单独处理:

-- 同时去除半角和全角空格

sql 复制代码
UPDATE model_engineering_param_scheme_val
SET pm_val = REPLACE(REPLACE(pm_val, ' ', ''), ' ', '')
WHERE psc_id = 40
  AND pm_val LIKE '% %';
相关推荐
andongni20311 分钟前
Spring Boot基础应用开发与部署
java·spring boot·后端
叶 落13 分钟前
Ubuntu24 安装 PostgreSQL
数据库·postgresql·安装教程
lupai16 分钟前
增值税发票 OCR 识别 API 新手接入指南
java·前端·ocr
TELL52117 分钟前
Sonar质量门禁
java
java修仙传21 分钟前
从网页禅道到 AI 能调用的工具:我的禅道 MCP 实现思路分享
java·人工智能·python·ai应用·mcp开发
HAYDENR21 分钟前
依赖数据迁移工具做增量同步有哪些易错点?调整数据迁移工具策略怎么保证断点续传可靠?
java·大数据·数据库
宿67425 分钟前
vue3-指令和事件处理
开发语言·前端·javascript
IT利刃出鞘33 分钟前
SpringBoot--解决@Valid放在接口的List上时无效的问题
java·spring
mqiqe38 分钟前
AgentScope Java Harness:2. 上下文压缩:让长期 Agent 永不“失忆“
java·开发语言
Aurorar0rua38 分钟前
CS50 x 2024 Notes Memory - 03
c语言·开发语言·学习方法