gpt4 book ai didi

javascript - 在多个分隔符上拆分字符串,同时保留一个或多个分隔符

转载 作者:行者123 更新时间:2023-12-03 07:02:32 25 4
gpt4 key购买 nike

有没有一种方法可以根据多个分隔符拆分字符串,同时将一些分隔符保留在拆分后的数组中?所以如果我有字符串 "This is a-weird string,right?" 我想得到

["This", "is", "a", "-", "weird", "string", ",", "right", "?"]

我尝试过使用 string.split(/([^a-zA-Z])/g),但我不想保留空格。 This guide似乎是我可以使用的东西,但我对正则表达式的理解还不足以知道如何混合这两者。

最佳答案

你可以使用

console.log("This is a-weird string,right?".match(/[^\W_]+|[^\w\s]|_/g))

正则表达式匹配:

  • [^\W_]+ - 一个或多个字母数字字符
  • | - 或
  • [^\w\s] - 除单词和空格以外的任何字符
  • | - 或
  • _ - 一个下划线。

regex demo .

一个完全识别 Unicode 的正则表达式将是

console.log("This is ą-węird string,right?".match(/[\p{L}\p{M}\p{N}]+|[\p{P}\p{S}]/gu))

这里,

  • [\p{L}\p{M}\p{N}]+ - 一个或多个 Unicode 字母、变音符号或数字
  • | - 或
  • [\p{P}\p{S}] - 单个标点符号或符号字符。

this regex demo .

关于javascript - 在多个分隔符上拆分字符串,同时保留一个或多个分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64908744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com