3 回答

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊
如果您只想知道替換了什么。我建議一個(gè)快速調(diào)試的想法,而不是試圖手動找出。
將 a
System.out.println(mhStr)
作為方法的第一行。在 if 語句的末尾替換
return
為;System.out.println(....)
不要忘記更改方法簽名以返回 null。所以,private void testRegEx(String myStr) {
檢查控制臺輸出以查看打印的兩行并進(jìn)行比較。你會立即知道發(fā)生了什么。
使用您希望對代碼進(jìn)行的任何修改來還原更改。
編輯:
在第二步中,只需 System.out.println(...) 并讓您的代碼保持原樣。感謝在下面指出的人。更好的方法來做到這一點(diǎn)。
因此,例如,如果您希望StringUtils.normalizeSpace(res)
在該行之前進(jìn)行比較,請System.out.println(StringUtils.normalizeSpace(res));
在第 1 點(diǎn)之后進(jìn)行。

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超11個(gè)贊
正如@SpinyBabbler 提到的那樣,經(jīng)過反復(fù)試驗(yàn),我們知道了一些字符,因此為避免所有混淆,我們在此鏈接后僅替換非 ASCII 字符: Replace non ASCII character from string
最后它使用這種模式: str1.replaceAll("[^\x00-\x7F]|[\u0001]", "");
感謝您提供的所有支持。
添加回答
舉報(bào)