データテーブルを使用して表示されるテーブルがあり、各列の上に空のテキスト フォーム フィールドがあり、ユーザーがフィルター条件で入力できるようになっています。これはすべてのテキスト フィールドで正常に機能し、整数フィールドでも正常に機能します。たとえば、ユーザーが NULL または NOT NULL を入力した場合など、いくつかの用語の変換を行っています。たとえば、それを正規表現 ^$ または .
正規表現はテキスト文字列を検索することを目的としていることは知っていますが、これはデータテーブルが使用するものであるため、これを行っています。私が欲しいのは、ユーザーが「x to y」などの値を入力して、それを正規表現に変換できるようにすることです。これを行う関数が見つかりません。誰か知っている人は教えてください。
関数がまだ存在しないと仮定して、正の整数のみが検索されると仮定し、7 桁までとします。0~9,999,999まで検索可能です。また、これがトリガーされる唯一の方法は、キーワード to とスペース " to " を使用することです。
次のようなものを開始します。
function convertNumRangeRegex(s){
if(s.indexOf(" to ") != -1){
var range = s.split(" to ");
lowRange = Number(range[0]);
highRange = Number(range[1]);
if(lowRange >= 0 && lowRange < 10 && highRange < 10){
s = "^[" + lowRange + "-" + highRange + "]$";
}};
return s;
};
これは 0 ~ 9 の数字で機能しますが、これを拡張するとかなり見苦しくなります。私はどんなアイデアにも賛成です。ありがとう。