You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用空格分隔字符串中的字母与数字?附输入输出示例

问题描述

现有包含字母与数字(含小数)的输入字符串,需要将字母与数字用空格分隔开,示例如下:

输入:

let input_string='L10M111.05K268.68V 265.42';

期望输出:

let output_string='L 10 M 111.05 K 268.68 V 265.42';
解决方案

可以借助JavaScript的正则表达式结合replace()方法实现,核心是匹配字母与数字的相邻边界,在两者之间插入空格,同时保留原有的空格。

实现代码

const input_string = 'L10M111.05K268.68V 265.42';
// 分两次替换,覆盖字母在前/数字在前的两种相邻情况
const output_string = input_string
  .replace(/([A-Za-z])(\d)/g, '$1 $2')
  .replace(/(\d)([A-Za-z])/g, '$1 $2');

console.log(output_string);
// 输出结果:"L 10 M 111.05 K 268.68 V 265.42"

正则逻辑说明

  • ([A-Za-z])(\d):匹配字母紧跟数字的组合,用括号将字母和数字分别分组,替换时在两组间插入空格($1对应字母组,$2对应数字组)
  • (\d)([A-Za-z]):匹配数字紧跟字母的组合,同样通过分组插入空格
  • 两次替换配合,能覆盖所有字母与数字相邻的场景,不会破坏原有的空格

适配调整

如果只需要处理大写字母,可将正则中的A-Za-z改为A-Z;若需兼容更多特殊数字格式(如负号开头的数字),可将\d调整为-?\d。

内容的提问来源于stack exchange,提问作者Theodore John

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 11:31:34