我需要格式化电话号码,例如replace()
:
发件人:+48 XX XXX XX XX
,其中X
是一个数字.
示例:+48 12 345 67 89
收件人:+48 XXX XXX XXX
示例:+48 123 456 789
编辑:
我的作品:
- 首先,我尝试删除string中的空格:
phone.replace(' ', '');
:
之前:+48 12 312 31 23
之后:+4812 312 31 23
结论:有些东西是错误的,因为它只格式化了第一个空格,而不是所有的东西。
- 我还试图根据其他有关regex的问题将它分成几个部分:
phone.replace(/(\d{3})(\d{3})(\d{3})(\d{3})/gi, '$1 $2 $3 $4');
和phone.replace(/(\d{3})" "(\d{3})" "(\d{3})" "(\d{3})/gi, '$1 $2 $3 $4');
和许多其他类似的配置。
之前:+48 12 312 31 23
之后:+48 12 312 31 23
结论:可以肯定的是,出了问题,没有变化。问题出在正则表达式上。
2条答案
按热度按时间fnvucqvd1#
仅供参考-
string.replace()
将仅替换您要替换的任何对象的第一个示例,而string.replaceAll()
将替换所有示例。iyfamqjs2#
您可以在此处使用正则表达式替换方法: