如何移除JSON中指定字段值的前3个固定字符?
移除JSON指定字段值的前3个字符解决方案
JavaScript 实现步骤
- 先将JSON字符串解析为可操作的对象,处理字段后再转回JSON格式
- 使用
slice(3)直接截取从第4位开始的字符(字符串索引从0计数,前三位对应索引0-2)
// 原始JSON字符串 const rawJson = `{ "hotelnumber" : "1234", "hotel_code" : "HTL2233658" }`; // 解析为JS对象 const hotelData = JSON.parse(rawJson); // 截取hotel_code前3位之后的内容 hotelData.hotel_code = hotelData.hotel_code.slice(3); // 转回带格式的JSON字符串 const resultJson = JSON.stringify(hotelData, null, 2); console.log(resultJson);
Python 实现步骤
- 借助
json模块完成JSON的解析与序列化 - 利用Python字符串切片
[3:]直接获取目标子串
import json # 原始JSON字符串 raw_json = '''{ "hotelnumber" : "1234", "hotel_code" : "HTL2233658" }''' # 解析为字典 hotel_dict = json.loads(raw_json) # 处理hotel_code字段 hotel_dict['hotel_code'] = hotel_dict['hotel_code'][3:] # 生成带格式的结果JSON result_json = json.dumps(hotel_dict, indent=2) print(result_json)
常见问题排查
replace方法失败:如果直接写replace('HTL', ''),会替换所有匹配的"HTL";要精准替换开头的一次,JS里用replace(/^HTL/, ''),Python里用replace('HTL', '', 1),但切片方法更通用,无需依赖固定前缀内容。substring用错:JS里substring(3)才是从第3位开始截取,要是写成substring(0,3)只会取前三位,自然达不到预期效果。
内容的提问来源于stack exchange,提问作者Sinuers
相关产品推荐
相关产品推荐

