Reputation: 343
I have a list of numbers such as
var list = ["123","12345678","123","234,2345","2.34567","123.12345","-123","-0.1234","-324215.45"];
This list can have negative, positive numbers with optional decimal values, also negative or positive.
I need to use regular expressions to do 3 things:
Value passed in is not known, could be any number.
Update 1:
I've got this, which isn't perfect but works on some numbers:
var a = function(rand) {
var val = "";
var numArr = rand.split("");
for(var i = 0; i < numArr.length; i++) {
val = val + (Number(numArr[i])+1);
}
return "^[^" + val.split("").join("-9][^") + "-9]$"
}; // outputs "^[^2-9][^3-9][^4-9][^5-9][^6-9]$" with rand "12345"
Im trying to get a regular expression programmatically generated from a given value For example "123456" is a random number (rand), I would like to be able to filter an array of numbers for values that are higher then rand (or lower then rand) using a regex value.
Thanks
Upvotes: 0
Views: 75
Reputation: 3060
You could use underscore.js (http://underscorejs.org) to filter your results. For example...
var list = ["123","12345678","123","234,2345","2.34567","123.12345","-123","-0.1234","-324215.45"];
function getAllNumbersBeforeValue(list, value) {
return _.filter(list, function(num) {
return num < value;
});
}
Here's an example without using a framework...
function getAllNumbersBeforeValue(list, value) {
var output = [];
for(var i = 0; i < list.length; i++) {
if(list[i] < value) {
output.push(list[i]);
}
}
return output;
}
getAllNumbersBeforeValue(list, 123);
Upvotes: 1