1. 程式人生 > >正則表示式解決身份證號碼和手機號

正則表示式解決身份證號碼和手機號

首先最後是這樣子的

手機號: 
return phone.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2')
身份證號:
return idcard.replace(/(\w{4})\w{10}(\w{4})/, '$1****$2')

比如說,

/(\d{3})\d{4}(\d{4})/
就是說因為手機號有11位,所以保持前3位後4位不動,中間4為替換為*

然後發現身份證號也按這個來寫就被坑了,因為/d匹配的是數字,/w才是多匹配,下面放一些常用用法。
PS:下面看下正則表示式 \w \s \d \b

. 匹配除換行符以外的任意字元

\w 匹配字母或數字或下劃線或漢字 等價於 
'[^A-Za-z0-9_]'。 \s 匹配任意的空白符 \d 匹配數字 \b 匹配單詞的開始或結束 ^ 匹配字串的開始 $ 匹配字串的結束 \w能不能匹配漢字要視你的作業系統和你的應用環境而定