打印给定列表中包含1,2,3的所有数字,不一定按顺序排列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打印给定列表中包含1,2,3的所有数字,不一定按顺序排列相关的知识,希望对你有一定的参考价值。

打印给定列表中包含数字1,2,3的所有数字,不一定按顺序排列。

输出中的数字应按排序顺序排列。

像876321,3245,123那样输出应该是:

123,876321

答案

使用具有一些正向前瞻的正则表达式进行正则表达式匹配,以确保有1 2和3。这是一个适用于您的测试用例的示例。 https://regex101.com/r/y052Pi/1/

(?=.*1)(?=.*2)(?=.*3)[0-9]*

将您的匹配放入可排序或排序的集合中。

这是一个可运行的js实现。

 var testValues = [876321,3245,123],
     results = [];
     
testValues.forEach( function( element ) {
  if( /^(?=.*1)(?=.*2)(?=.*3)[0-9]*/.test( '' + element) ) {
    results.push(element);
  }
});

results = results.sort( (a, b) => a - b );

console.log( results );

以上是关于打印给定列表中包含1,2,3的所有数字,不一定按顺序排列的主要内容,如果未能解决你的问题,请参考以下文章

给定数字 n,如何打印大小为 m 的所有子序列?

LeetCode:全排列46

查找给定字符串中包含的字谜

递归序列python

打印可以等于给定数字的所有 3 个连续数字

RTL基本知识:如何正确在敏感信号列表中包含function中的信号