通过几个条件删除部分子字符串

问题描述 投票:0回答:1

如何“清除”所有以

GH
开头直到
-
标记的字符串,我只需要其余的数据,问题是我不知道
GHxxx-
的一部分是什么数字,
GHxx-
在示例中,它可以是任何东西。

正则表达式有没有办法定义这样的东西?

GH82-30476E/30477E
GH82-23124B GH82-23100B
GH82-20900A, GH82-20838A
GH82-20900C,GH82-20838C
GH962-13566A
GH82-23596C/23597C/31461C

想要的结果:

30476E 30477E
23124B 23100B
20900A 20838A
20900C 20838C
13566A
23596C 23597C 31461C

const arr = ["GH82-30476E/30477E", "GH82-23124B GH82-23100B", "GH82-20900A, GH82-20838A", "GH82-20900C,GH82-20838C", "GH962-13566A", "GH82-23596C/23597C/31461C"]

arr.forEach((e, index) => {
  arr[index] = e.replace(/GH82-/gi, '');


})
console.log(arr)

比你提前。

javascript regex replaceall
1个回答
0
投票

您可以只获取输出并忽略其他所有内容:

const regex = /[0-9]{5}[A-Z]/gm;
const arr = [
  "GH82-30476E/30477E",
  "GH82-23124B GH82-23100B",
  "GH82-20900A, GH82-20838A",
  "GH82-20900C,GH82-20838C",
  "GH962-13566A",
  "GH82-23596C/23597C/31461C",
];

let res = [];

arr.forEach((str) => {
  const M = str.match(regex);
  if (M) {
    res.push(M.join(" "));
  }
});

console.log(res);

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.