Rumah  >  Soal Jawab  >  teks badan

Menggunakan ungkapan biasa untuk memformat input nombor telefon dalam Element Plus

Sebarang bantuan dengan isu kecil tetapi sangat mengecewakan akan sangat dihargai. Saya sedang membangunkan projek Vue menggunakan perpustakaan elemen tambah. Input pengguna: '123456789' Saya perlu menghubungi: '+998-(12) 345-67-89

Element plus mempunyai pemformat, tetapi saya perlu menggunakan ungkapan biasa untuk membuatnya. Malangnya saya menghadapi masalah untuk membuatnya berfungsi. https://element-plus.org/en-US/component/input.html#formatter

Saya hanya menyemak nombor sekarang dan tidak dapat mengetahui lebih lanjut

<script setup>
import { ref, unref } from 'vue'
import { ElInput } from 'element-plus'

const phoneNumber = ref('')
</script>
<template>
  <el-input v-model="phoneNumber" :formatter="(value) => value.replace(/D/g, '')" />
</template>


P粉191323236P粉191323236294 hari yang lalu523

membalas semua(1)saya akan balas

  • P粉235202573

    P粉2352025732023-12-31 11:45:30

    Anda boleh menggunakan ungkapan biasa berikut:

    value.replace(/^\+998|\D/g, '').replace(/^(\d{1,2})(\d{1,3})?(\d{1,2})?(\d{1,2})?.*/, (m, g1, g2, g3, g4) => `+998-(${g1})` + (g2 ? `-${g2}` : '') + (g3 ? `-${g3}` : '') + (g4 ? `-${g4}` : '')))
    

    Yang pertama .replace(/^+998|D/g, '') 删除字符串开头的 +998 (由成功的后续替换)和任何非数字字符,以及 replace(/^(d{1,2})(d{1,3})?(d{1,2})?( d{1,2})?.*/, (m, g1, g2, g3, g4) => `+998-(${g1})` + (g2 ? `-${g2}` : '' ) + (g3 ? `-${g3}` : '') + (g4 ? `-${g4}` : '')) dilancarkan semasa anda menaip hanya jika perlu dengan menambah -.

    balas
    0
  • Batalbalas