sTest_Val_1( "30")変数に値を入力してTrueまたはFalse値を取得します。"sTest_Val_1 <50"文字列を "sTest_Val_1"、 "<"、 "50"に分割する方法
したがって、変数と演算子を分割して分離しようとします。
最初は次のソースコードを使用しました。
しかし、このソースコードはsTest_Val_1からも "_"を分割しているため、問題を引き起こしています。
変数に特殊文字が含まれているため、正しく分割できませんでした。だから私は変数に "30"の値を入れることができませんでした。
var expression = "sTest_Val_1 < 50"; //or "sTest_Val_1<50"
var copy = expression; //"sTest_Val_1 < 50"
expression = expression.replace(/[0-9a-zA-Z]+/g, "#"); //"#_#_# < #"
var numbers = copy.split(/[^0-9a-zA-Z\.]+/); //[sTest,Val,1,50]
var operators = expression.split("#").filter(function (n) { return n }); //[_,_, < ]
var result = [];
var sRst = "";
result.push(numbers[i]);
sRst += numbers[i];
if (i < operators.length) {
result.push(operators[i]);
sRst += operators[i];
console.log(sRst);
return eval(sRst); // I want True, False
sTest_Val_1の値は別のページで定義されています。 (私は最初のページがロードされたjavascriptオブジェクトにこの値を取得します。)
string sTest_Val_1 = "30";
string sTest_Val_2 = "30";
string sTimeVal_1 = "65380";
// ....
「sTest_Val_1」この値は、最初の文字だけでアルファベット文字を含めることができます。
ただし、文字の長さはランダムであり、文字内の特殊文字もランダムです。 (<、>、+、 - 、=は含まれません)
英語が十分ではありません。ご理解ください。
スプリットになりますか? – Weedoze
しかし、私はスペースが入力されることを確認することはできません。 – cherryJang
あなたはオペレータで分割しただけですか? – Fallenhero