在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ java正則表達(dá)式怎么定義只替換中間的字符

java正則表達(dá)式怎么定義只替換中間的字符

比如說用戶名
String name = "歐陽(yáng)拜拜";
怎么用正則表達(dá)式替換成“歐XX拜”
切字符串之后,在拼接我會(huì),但用正則表達(dá)式應(yīng)該可以直接用replaceAll()直接完成吧?

回答
編輯回答
風(fēng)畔

js的話可以這么干,你參考下:

    let name = "歐陽(yáng)拜拜"
    let nname = name.replace(/(?<=.{1}).*(?=.{1})/g,"X")
    

圖片描述

2017年10月2日 01:42
編輯回答
別傷我

利用正則斷言,去除前后任意固定字符,然后中間內(nèi)容,替換

name.replaceAll("(?<=.{2}).*(?=.{2})","x")
2018年8月25日 11:16
編輯回答
忘了我

感謝各位大神的熱心解答,最后找到個(gè)網(wǎng)站查了查,結(jié)合一位大神的答案終于實(shí)現(xiàn)我的需求,name.replaceAll("(?<=.{1}).(?=.{1})","x")),去掉頭尾中間字符全部換成X有多少位字符換多少個(gè)X,正則表達(dá)式網(wǎng)站

2018年3月14日 11:37
編輯回答
撥弦

簡(jiǎn)單的方法:

name.replaceAll("^(.)(.*?)(.)$", "$1xx$3")

缺點(diǎn)是中間的xx是固定兩個(gè)字符,如果想不固定,要復(fù)雜一些,一個(gè)replaceAll搞不定。

2018年3月30日 22:36