【flutter】dart正则替换手机号中间四位为*
Flutter项目中隐藏手机号中间4位
例:13888888888 => 138**8888
回答
研究了一下dart的api,试出了一种写法
String phoneNumber = '13888888888';String phoneNumberStr = phoneNumber.replaceFirst(new RegExp(r'\d{4}'), '****', 3);
replaceFirst用法:
String replaceFirst(Pattern from, String to, [int startIndex = 0])dart:core
Returns a new string in which the first occurrence of [from] in this string is replaced with [to], starting from [startIndex]:
'0.0001'.replaceFirst(new RegExp(r'0'), ''); // '.0001'
'0.0001'.replaceFirst(new RegExp(r'0'), '7', 1); // '0.7001'
不知道Flutter
中正则替换的语法,希望下面js
的例子能帮到你。
首先,我们要替换的是中间四位,那么,我们可以匹配从前面是三位数
和本身是四位数
的规则来写正则。前面是三位数
:(?<=\d{3})
本身是四位数
:(\d{4})
正则表达式
/(?<=\d{3})(\d{4})/
js代码示例:
let str = '13888888888'; let reg = /(?<=\d{3})(\d{4})/;
str.replace(reg,"****"); //138****8888
https://api.dart.dev/stable/2...
以上是 【flutter】dart正则替换手机号中间四位为* 的全部内容, 来源链接: utcz.com/a/82858.html