-3
我想通過JavaScript複製可變圖案到其它變量,從而在同一時間Javascript來複制已掩蔽
例如 處理掩蔽和業務rqmnt可變圖案若a = 89734以及b = 98780 那麼b也應該像 - 98,780
注 - ','只是一個示例掩碼也可以用小數點''。 或大寫/小寫字符串的情況下。
任何人都可以請幫我在此感謝
我想通過JavaScript複製可變圖案到其它變量,從而在同一時間Javascript來複制已掩蔽
例如 處理掩蔽和業務rqmnt可變圖案若a = 89734以及b = 98780 那麼b也應該像 - 98,780
注 - ','只是一個示例掩碼也可以用小數點''。 或大寫/小寫字符串的情況下。
任何人都可以請幫我在此感謝
嘗試:
pattern
| given
| | result
| | |
9 + 9 -> keep
* + 9 -> insert *
a + a -> keep
a + A -> a (lower)
A + a -> A (upper)
function build(a, b) {
function isN(s) { return (typeof s !== 'undefined') && ~s.search(/\d/); }
function isL(s) { return s === s.toLowerCase(); }
var i, l;
for (i = 0, l = a.length; i < l; i++) {
if (!isN(a[i]) && isN(b[i])) {
b = b.slice(0, i) + a[i] + b.slice(i);
continue;
}
if (a[i].toLowerCase() !== a[i].toUpperCase()) {
if (isL(a[i]) && !isL(b[i]) || !isL(a[i]) && isL(b[i])) {
b = b.slice(0, i) + b[i][isL(a[i]) ? 'toLowerCase' : 'toUpperCase']() + b.slice(i + 1);
continue;
}
}
}
return b;
}
function go(a, b) {
document.write('<pre>pattern: ' + a + '\ngiven: ' + b + '\nresult: ' + build(a, b) + '</pre>');
}
go('89,734', '98780');
go('aBcDeF', 'zyxwvu');
go('aBcDeF', 'GHIJKL');
go('12*456', 'abcdef');
go('12*456', '98765');
go('124.000,56 Euro', '25287674 euro');
更多細節將是有益的 –