在Java中,有時需要對金額和姓名進行高亮顯示。下面我們來看一下如何實現(xiàn)。
對于金額的高亮顯示,我們可以先定義一個正則表達式:
String regex = "\\d+(\\.\\d{1,2})?";
該正則表達式匹配一個或多個數(shù)字,后跟一個小數(shù)點和1-2位小數(shù)。
接下來,我們可以使用Matcher
類來匹配字符串并進行高亮處理:
String input = "訂房金額:2567.84元,其中押金為200元。"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(input); while (matcher.find()) { String match = matcher.group(); input = input.replace(match, "<b>" + match + "</b>"); } System.out.println(input);
上述代碼將字符串input
中符合正則表達式的部分用<b>
標(biāo)簽包裹起來進行高亮處理。
對于姓名的高亮顯示,我們可以類似地定義一個正則表達式:
String regex = "[\u4e00-\u9fa5]+";
該正則表達式匹配一個或多個漢字。
然后我們可以使用Matcher
類將匹配到的字符串高亮處理:
String input = "入住人:張三、李四。"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(input); while (matcher.find()) { String match = matcher.group(); input = input.replace(match, "<b>" + match + "</b>"); } System.out.println(input);
上述代碼將字符串input
中符合正則表達式的漢字用<b>
標(biāo)簽包裹起來進行高亮處理。