Java處理不可見特殊字符要點解析
看下圖所示,兩個空字符串不相等
因為str中有不可兼得特殊字符,可以在debug中將str的值復制出來,然后粘貼到雙引號中們就可以看到這個字符的真面目,如下圖所示:
\uFEFF為控制字符,名為"零寬不折行空格(Zero Width No-Break Space)",此外,類似的不可見字符還有\(zhòng)u202A(從左至右嵌入)、\u202E(從右至左強制)等控制字符
那我們事怎么遇到這些控制字符的呢?
在讀取文件或者從某文件屬性中直接復制路徑經常會遇到這種問題
在開發(fā)中可以對獲得的字符串進行以下處理,來刪除這些控制字符:網(wǎng)上很多說使用正則\\p{Cntrl}進行替換,經過測試并不起作用,而是用朋友告訴我的\\p{C}
String str2 = str1.replaceAll("\\p{C}", "");
System.out.println("".equals(str2));
就是一些特殊的Unicode字符,如果不確定,可先判斷長度是否一樣:
推薦字符查詢網(wǎng)址查詢網(wǎng)址:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
SpringBoot整合POI實現(xiàn)Excel文件讀寫操作
EasyExcel是一個基于Java的、快速、簡潔、解決大文件內存溢出的Excel處理工具,這篇文章主要介紹了SpringBoot整合POI實現(xiàn)Excel文件讀寫操作,首先準備環(huán)境進行一系列操作,本文給大家介紹的非常詳細,需要的朋友參考下吧2023-10-10Spring使用Jackson實現(xiàn)轉換XML與Java對象
這篇文章主要為大家詳細介紹了Spring如何使用Jackson實現(xiàn)轉換XML與Java對象,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-02-02Java DefaultListableBeanFactory接口超詳細介紹
這篇文章主要介紹了Java DefaultListableBeanFactory接口,DefaultListableBeanFactory是整個bean加載的核心部分,是Spring注冊機加載bean的默認實現(xiàn)2022-11-11Spring需要三個級別緩存解決循環(huán)依賴原理解析
這篇文章主要為大家介紹了Spring需要三個級別緩存解決循環(huán)依賴原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02Java常用正則表達式驗證工具類RegexUtils.java
相信大家對正則表達式一定都有所了解和研究,這篇文章主要為大家分享了Java 表單注冊常用正則表達式驗證工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11