regex 替换所有单词中除第一个字母外的所有字母

xkrw2x1b  于 2023-03-04  发布在  其他
关注(0)|答案(1)|浏览(142)
var substitute_with = "_";
const regex = /\B\w/g;

var result = text.replaceAll(regex, substitute_with);

这段代码用下划线替换所有字母,除了所有单词的第一个字母。
这对英语语言很有效,但我需要英语和西里尔语都一样。
示例:
有一个字母是“拉齐斯塔”,有一个字母是“拉齐斯塔”,有一个字母是“拉齐斯塔”,字母是“拉齐斯塔”.
在线正则表达式:https://regex101.com/r/scjHae/1
你能帮帮我吗?

yjghlzjz

yjghlzjz1#

您可以使用Unicode property escapes(带有u标志),并使用一个look behindAssert来代替\B

const result = "They all shouted Слава Україні!".replaceAll(/(?<=\p{L})\p{L}/gu, "_");
console.log(result);

相关问题