如何使用 react-native 更改 Textinput 中的电话号码格式

Hus*_*aik 4 react-native

我希望电话号码(工作电话)格式如下图所示,使用 react-native,任何人都可以帮助解决它,非常感谢任何帮助 在此处输入图片说明

Nat*_*bin 10

您可以使用正则表达式来实现这一点......这将格式化为 (555) 222-9999

onTextChange(text) {
    var cleaned = ('' + text).replace(/\D/g, '')
    var match = cleaned.match(/^(1|)?(\d{3})(\d{3})(\d{4})$/)
    if (match) {
        var intlCode = (match[1] ? '+1 ' : ''),
            number = [intlCode, '(', match[2], ') ', match[3], '-', match[4]].join('');

        this.setState({
            phoneNum: number
        });

        return;
    }

    this.setState({
        phoneNum: text
    });
}
Run Code Online (Sandbox Code Playgroud)

然后在<TextInput>...

<TextInput 
    onChangeText={(text) => this.onTextChange(text) }
    value={this.state.phoneNum}
    textContentType='telephoneNumber' 
    dataDetectorTypes='phoneNumber' 
    keyboardType='phone-pad' 
    maxLength={14}
/>
Run Code Online (Sandbox Code Playgroud)