Regex react native中带有正则表达式的电话字段的验证

Regex react native中带有正则表达式的电话字段的验证,regex,reactjs,react-native,Regex,Reactjs,React Native,我想限制用户在输入字段中输入除第一个字符以外的任何特殊字符,如+,并且字符总数不超过15。我想在react native中的onChangeText上使用正则表达式检查它。如果用户是另一个+,则应限制它 我正在使用下面的表达式,它只接受数字,但现在我希望它接受第一个字符为+ export default (val) => { return val.replace(/\D+/g, '') } 你可以用 export default (val) => { return val.

我想限制用户在输入字段中输入除第一个字符以外的任何特殊字符,如
+
,并且字符总数不超过
15
。我想在react native中的
onChangeText
上使用正则表达式检查它。如果用户是另一个
+
,则应限制它

我正在使用下面的表达式,它只接受数字,但现在我希望它接受第一个字符为
+

export default (val) => {
  return val.replace(/\D+/g, '')
}
你可以用

export default (val) => {
  return val.replace(/^(\+)|\D/g, '$1')
}
请参阅和:


正则表达式将字符串开头的
+
或所有其他上下文中的任何非数字字符匹配并捕获到组1中,匹配将替换为组1的内容。因此,如果在开始时有一个
+
,它将被放回结果字符串中,否则,它将从字符串中删除。

如何限制空白?@technerd您能更具体一点吗?我希望用户输入类似
+123456789012345
,,但不允许用户添加空白。@technerd
\D
匹配空白并
。替换
将删除它。