1. 程式人生 > >java 處理字串是的轉義字元的處理

java 處理字串是的轉義字元的處理

  作為一名java初學者,在遇到關於轉義字元處理的時候總會感覺有點複雜,特別是在處理反斜槓“\”的時候,會有點繞彎子,為了避免自己忘了就現在這裡做一個記錄。廢話不多說,先看一個例子。

package test;


import java.net.URL;

import org.junit.Before;
import org.junit.Test;

public class EscapeCharacterTest {

	@Before
	public void setUp() throws Exception {
	}
	
	@Test
	public void testEscapeCharacter(){
		URL url=Thread.currentThread().getContextClassLoader().getResource("");
		String path=url.toString();
		String path2=System.getProperty("user.dir");
		System.out.println("path: "+path);
		System.out.println("path2: "+path2);
	}

}

這是獲取當前簡單java工程的classpath的兩種方法,控制檯輸出如下:
path: file:/E:/LuJunXian/aotospace/ReadOffice/bin/
path2: E:\LuJunXian\aotospace\ReadOffice

可見:path使用的分隔符是斜槓:“/” ; 而path2使用的是反斜槓: "\" ;
在java語言中,“\”所代表的是轉義字元,並不代表反斜槓本身,所以在java程式碼中想要表示反斜槓本身“\”,則需要表示為“\\”,前一個反斜槓表示轉義後一個反斜槓為反斜槓本身,也就是說,如果需要在控制檯通過System.Out.println()打印出一個反斜槓的話,程式碼需要這樣寫System.out.println("\\");再稍微的延伸一下,如果需要在控制檯列印單引號或者雙引號的話,程式碼是System.out.println("\"");如果不加轉義字元“\”就會出現配對的錯誤。

在String類的方法裡面,split和replace或者replaceAll會經常被用到,比如,若需要將path2的檔案分隔符轉換為path的型別,則需要將程式碼寫成 path2.replaceAll("\\\\", "/");
為什麼需要這樣寫呢?原因就是第一個引數是正則表示式,在正則表示式中,“\”也是轉義字元,可以簡單的理解為,第一個引數需要經過兩次轉義才能將其轉化為一個普通的字串,所以就是前兩個反斜槓"\\"經過正則表示式的轉換後變成"\",同理,第三個和第四個經過正則表示式轉換後也變成"\",所以經過第一次轉換後的第一個引數變成“\\”,第二次轉義後就變成了普通的字元"\"而不是轉義字元,
同樣的道理:若有一段字串:“ab||cd||1234||8569”,這串字元被“||”分隔,若是需要用split解析的話,應該寫成String []strs=str.split("\\|\\|");
下表列舉了其他的一些常用轉義字元。

轉義字元

相關推薦

java轉義字元處理——“\\”替換為“/”

replaceAll("\\\\", "/"); 例如 //獲取專案路徑,並將\轉換為/ File directory = new File(""); String courseFile = directory.getCanonicalPath().replaceAll("\\\\", "/");

字串轉義字元處理

對sql語句的拼裝進行轉義,因此需要加入兩層轉義字元,一層適用於資料入庫,二層適用於從資料庫查詢出來在頁面用js eval()方法轉成js物件讀取資料,並進行效果展示public static String strMarkHandle1(String str){return

用 Python 處理 HTML 轉義字元的5種方式

寫爬蟲是一個傳送請求,提取資料,清洗資料,儲存資料的過程。在這個過程中,不同的資料來源返回的資料格式各不相同,有 JSON 格式,有 XML 文件,不過大部分還是 HTML 文件,HTML 經常會混雜有轉移字元,這些字元我們需要把它轉義成真正的字元。 什麼是轉義字元 在 HTML 中 <

用Python處理HTML轉義字元的5種方式

寫爬蟲是一個傳送請求,提取資料,清洗資料,儲存資料的過程。在這個過程中,不同的資料來源返回的資料格式各不相同,有 JSON 格式,有 XML 文件,不過大部分還是 HTML 文件,HTML 經常會混雜有轉移字元,這些字元我們需要把它轉義成真正的字元。 什麼是轉義字元

python處理HTML轉義字元

抓網頁資料經常遇到例如&gt;或者&nbsp;這種HTML轉義符,抓到字串裡很是煩人。 比方說一個從網頁中抓到的字串 html = '&lt;abc&gt;' 用Python可以這樣處理: import HTMLParser ht

Asp.net/java 的 [字串Url] 引數處理

    CSDN廣告是越來越多了,所有部落格筆記不再更新,新網址 DotNet筆記 先看一個msdn  Uri類:Uri類       和本篇文章沒關係,只是為了方便查詢 /// <summary> /// 獲取一個url中字

Java JSON格式特殊字元處理

1.傳遞JSON格式特殊字元儲存後,查詢導致前臺無法展示    特殊字元:雙引號(")  單引號(') 等等 public static String changeHtm(String changeHtmlValue) { if(null == changeHtmlV

Javascript URL 編碼區別及轉義字元處理

提示和註釋 提示:請注意 encodeURIComponent() 函式 與 encodeURI() 函式的區別之處,前者假定它的引數是 URI 的一部分(比如協議、主機名、路徑或查詢字串)。因此 encodeURIComponent() 函式將轉義用於分隔 URI 各個部分的標點符號。 4 總結:

java字串 按照字元挨個換行輸出-兩種方法

方案1:將String 字串 轉化為char 陣列 toCharArray public static void main(String[] args) { String s="aaahssjshs222"; // 轉化為字元陣列。 char[] c=s

Java 讀取字串字元的個數

以“aaabbbccsdlfhhk”為例 要求輸出樣式為a(3)b(3)… import java.util.Iterator; import java.util.Map; import java.util.TreeMap; public class Demo

java中的轉義字元,html中的轉義字元

形象理解 在java中轉義字元都有一定的含義,編譯程式的時候會展現出來(就像人的名片一樣,一個轉義字元都有一個實際的含義)! " "在java中代表裡面包含了一個字串編譯後只剩下字串,\"則會被編譯成 "保留下來 參考資料 概念:通過 \ 來轉變後面字母或符號的含

python MySQL database 訪問處理(含中文字元處理)例項

直接上程式碼: #!/usr/bin/env python # encoding: utf-8

Java中xml轉義字元和gt,gte,lt,lte縮寫

java mybatis XML檔案中不允許出現">"、"<"之類的符號。需要轉義 欄位 符號 說明 &lt ; < 小於號 &gt

Java中將字串變成字元(位元組)串,並且遍歷的兩種方法

方法一:String.toCharArray( ) ; 返回的是char[ ]陣列; 方法二:String.split("") ; 返回的是String [ ] 陣列; 演示的程式碼如下: import java.util.*; public class DemoMap

Java連載11-轉義字元&整數型

一、轉義符 1.\'代表單引號;\\代表\; 二、native2ascii.exe JDK中自帶的native2ascii.exe命令,可以將文字轉換成unicode編碼形式 我們使用這個程式嘗試一下: 之所以介紹這個程式是為了說明我們輸入的字元在計算機內部會轉換成這一字串,同時我們使用System.ou

java 處理字串是的轉義字元處理

  作為一名java初學者,在遇到關於轉義字元處理的時候總會感覺有點複雜,特別是在處理反斜槓“\”的時候,會有點繞彎子,為了避免自己忘了就現在這裡做一個記錄。廢話不多說,先看一個例子。package test; import java.net.URL; import org.junit.Before;

java處理SQL特殊字元轉義 防止sql注入

SQL特殊字元轉義 應 該說,您即使沒有處理 HTML 或 JavaScript 的特殊字元,也不會帶來災難性的後果,但是如果不在動態構造 SQL 語句時對變數中特殊字元進行處理,將可能導致程式漏洞、資料盜取、資料破壞等嚴重的安全問題。網路中有大量講解 SQL 注入的文

Java String字串處理字元處理

字串類Sring   字串時由字元構成的一個序列,在JAVA中,字串是一個物件; 1、字串的構造 1)從字串直接量建立一個字串   String 字串名 = new String(字串直接量)

Java字串以某特殊字元分割處理

字串以某特殊字元分割 String mylm = "12,34,56"; String a[] = mylm.split(","); lm = a[0]; lm2 = a[1]; l

Abap 字串及特殊字元處理

1.字元轉ASCII   URL_ASCII_CODE_GET   特點:根據這個演算法可以中文轉ASCII DATA: char_cd(2) TYPE c. CALL FUNCTION 'URL_ASCII_CODE_GET'