首页 > 解决方案 > 检查字符串中的特定子字符串模式并获取其所有匹配项

问题描述

我正在尝试在字符串中搜索并尝试从字符串中提取特定内容。这是我要解决的示例。

const string = 'xtyzjdjgdjf +91888123455, +918885558565 +916885123456, +911234569870'
i am trying to extract only '+91888123455, +918885558565 +916885123456, +911234569870'

但这个数字是动态的,它会根据响应而变化

标签: javascriptregexstringmatch

解决方案


关于使用的正则表达式的模式/\+\d+,{0,1}/g......

  1. \+... 匹配一个强制+符号 ... 后跟 ...
  2. \d+... 至少一个数字(或一系列数字) ... 后跟 ...
  3. ,{0,1}...单个但可选的逗号。
  4. g... 全局搜索/匹配模式。

function extractValidNumberSequences(str) {
  return str.match(/\+\d+,{0,1}/g).join(' ');
}

const test = `
  xtyzjdjgdjf +91888123455, +918885558565 +916885123456,,, +91123456987 dsjk jjd
  sag sadgsadj 43865984 dsjghj, +918885558565 +916885123456,,, +91123456987 dsjk
`;

console.log(`extractValidNumberSequences(test) : "${ extractValidNumberSequences(test) }"`);
.as-console-wrapper { min-height: 100%!important; top: 0; }


推荐阅读