我需要返回电话号码字段的最后4位数字(格式不一致)以显示为PIN。
为我的怪诞尝试道歉,但我可以在下面更改显示$ PIN作为电话字段的最后4位数字?
#set ($PIN = ${lead.IR_Main_Phone__c}.substring(0,-4))
答案 0 :(得分:1)
您应该在 lead.IR_Main_Phone__c var中过滤非数字字符,然后获取最后4位数字。
示例:
String phoneno = "+1-(800)-555-2468";
$phoneno.replaceAll("\D", ""); //Removes non-digit characters
$PIN = $phoneno.substring(0,-4) //gives: 2468
另外,没有子字符串的另一种方式:
String phoneno = "+1-(800)-555-2468";
$phoneno.replaceAll("\D", ""); //Removes non-digit characters
$phoneno.replaceAll("(?=\d{5})\d", ""); //removes all but last 4 digits
$PIN = $phoneno //gives: 2468
答案 1 :(得分:0)
不是速度动画库吗? 只需使用常规javascript
var str = "123-4 5 6 7";
var numbersOnly = str.match(/\d+/g, str).join('');
console.log(numbersOnly.length); // outputs 7
console.log(numbersOnly.substr(numbersOnly.length-4)); //output "4567"
编辑:现在使用正则表达式过滤掉非数字