JavaScript:使用正则表达式在 Char 和 Number 之间添加空格

标签 javascript regex

您好,我有一个车牌号 BZ8345LK 并希望转换为 BZ 8345 LK(在字符和数字之间添加空格)。

我尝试使用此正则表达式但不起作用,仅将第一个字符与数字分开。例如 BZ 8345LK,“LK”与数字之间不留空格。

var str = 'BZ8345LK';
str.replace(/[^0-9](?=[0-9])/g, '$& ');
# return BZ 8345LK, I want BZ 8345 LK

最佳答案

您可以使用此正则表达式

[a-z](?=\d)|\d(?=[a-z])
  • [a-z](?=\d) - 匹配任何字母后跟数字
  • | - 与逻辑 OR 相同的交替
  • \d(?=[a-z]) - 任何数字后跟字母

let str = 'BZ8345LK'

let op = str.replace(/[a-z](?=\d)|\d(?=[a-z])/gi, '$& ')

console.log(op)

关于JavaScript:使用正则表达式在 Char 和 Number 之间添加空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56392398/

相关文章:

javascript - 创建 JS 库以在 npm 中工作

php - 提交表单后保持选择的值

javascript 函数被调用两次

python - 在正则表达式中的字符之后开始匹配

C++ 错误 : no matching function for call to 'regex_match()'

JavaScript href toString() 检查字符串是否为空未给出预期结果

javascript - 部署到 Heroku 时如何忽略 GitHub 存储库中的文件?

java - 空字符串的模式是什么?

regex - 更改gradle中的文件扩展名

regex - 在文本文件中加入具有特定模式的行