我希望限制用户在输入字段中输入任何特殊字符,除了第一个字符为+
,并且字符总数不超过15
。我想在React Native中使用onChangeText
上的正则表达式检查它。如果用户使用另一个+
,则应该对其进行限制。
我正在使用下面的表达式,该表达式仅接受数字,但现在我希望它接受第一个字符为+
。
export default (val) => {
return val.replace(/\D+/g, '')
}
答案 0 :(得分:1)
您可以使用
export default (val) => {
return val.replace(/^(\+)|\D/g, '$1')
}
正则表达式会在字符串的开头或所有其他上下文中的任何非数字char处将+
匹配并捕获到组1中,并且将匹配项替换为组1的内容。因此,如果存在开头的+
,它将被放回到结果字符串中,否则将从字符串中删除。