我有一个字符串,它将接受以下内容:
这是模式:xxx-A-mmddyyyy-xxxxxx
.
人员通过复制粘贴或手工阻塞输入值。我想做的,onBlur()
,是创建一个函数,将删除第一个破折号在任何情况下。
我希望模式匹配是只允许上述内容的REGEX。结果将是:
xxxA-mmddyyyy-xxxxxx
差不多了。
这是使用DASH的REGEX模式,以及我希望它在剥离第一个破折号之后的样子:
public static readonly NUMBERWITHDASH = /^[0-9]{3}-[A-Z]-[0-9]{8}-[0-9]{6}$/;
public static readonly NUMBERNODASH = /^[0-9]{3}[A-Z]-[0-9]{8}-[0-9]{6}$/;
对于这个简单的练习,您不需要正则表达式:
let string = 'xxx-A-mmddyyyy-xxxxxx';
const index = 3;
if(string.charAt(index) === '-') {
string = string.slice(0,index) + string.slice(index+1);
}
console.log(string);
或者更简单:
let string = 'xxx-A-mmddyyyy-xxxxxx';
const index = 3;
if(string.charAt(index) === '-') {
string = string.replace('-', '');
}
console.log(string);