如何将数字显示为 **** ****

我想将数字转换为 * 并在每 4 位数字后添加空格。例如:12345678 -> 1234 5678 -> **** **** 现在我只是将数字转换为 * 但不能添加空格。(将数字转换为 * 时,添加空格功能不起作用)请帮帮我!


import React, { Component } from 'react';

import { Text, TextInput, View } from 'react-native';


export default class PizzaTranslator extends Component {

  constructor(props) {

    super(props);

    this.state = {text: ''};

  }


  render() {

    return (

      <View style={{padding: 10}}>

        <TextInput

          style={{height: 40}}

          placeholder="Type here to translate!"

          onChangeText={(text) => this.setState({text})}

          value={this.state.text}

        />

        <Text style={{padding: 10, fontSize: 42}}>

{this.state.text.replace(/(\(-?\d+(?:\.\d*){4})/g,'$1').replace(/(^\s+|\s+$)/,'') .slice(20).padStart(this.state.text.length, '*')}

        </Text>

      </View>

    );

  }

}

我期望输入:123456789123 输出:**** **** ****


慕的地6264312
浏览 225回答 2
2回答

慕工程0101907

一行答案:"123456781234".replace(/[0-9]/g,&nbsp;"*").match(/.{1,4}/g).join("&nbsp;");

慕姐8265434

试试这个分组this.state.text.replace(/[^\dA-Z]/g, '').replace(/(.{4})/g, '$1 ').trim();编辑:如何在 javascript 中拆分 '********'var str = "************";var chuncks = str.match(/.{1,4}/g);var new_value = chuncks.join(" "); //returns **** **** ****综合以上两者后,以下将是完整的答案:var starString = "123456781234".replace(/[0-9]/g, "*");var chuncks = starString.match(/.{1,4}/g);var new_value = chuncks.join(" "); //returns **** **** ****
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript