java replaceAll() 方法要用 4 個反斜槓,表示一個反斜槓
java replaceAll() 方法要用 4 個反斜槓,表示一個反斜槓
例如 str1="aa\bbb"; str2="aa'bbb";
要想替換成 str1="aa\\bbb";str2="aa\'bbb";
必須這樣替換:
str1 = str1.replaceAll("\\\\", "\\\\\\\\");
str2 = str2.replaceAll("'", "\\\\'");
原因如下:
String 的 replaceAll() 方法,實際是採用正則表示式的規則去匹配的,
\\\\ ,java解析為\\交給正則表示式, 正則表示式再經過一次轉換,把\\轉換成為\
也就是java裡面要用正則來表示一個\. 必須寫成4個\
如果要表示\\,那就要寫8個\
所以如果寫成: str1 = str1.replaceAll("\\", "\\\\");
就會報正則表示式的錯誤。
相關推薦
java replaceAll() 方法要用 4 個反斜槓,表示一個反斜槓
java replaceAll() 方法要用 4 個反斜槓,表示一個反斜槓 例如 str1="aa\bbb"; str2="aa'bbb"; 要想替換成 str1="aa\\bbb";str2="aa\'b
java中方法調用在內存中的體現
壓入 ble borde dbo 才會 執行 lsp 過程 執行過程 在java中,方法以及局部變量(即在方法中聲明的變量)是放在棧內存上的。當你調用一個方法時,該方法會放在調用棧的棧頂。棧頂的方法是目前正在執行的方法,直到執行完畢才會從棧頂釋放。我們知道,棧是一種執行”先
java --replaceAll方法
print style system gpo clas replace int println -- public void abc(){ String str = "aabbccdd"; str = str.replaceAll("\\d+","數字");
Java中方法重寫的兩個面試題
col class 返回 load 重寫 this strong gpo 不同 1:方法重寫和方法重載的區別?方法重載能改變返回值類型嗎? 方法重寫: 在子類中,出現和父類中一模一樣的方法聲明的現象。(包含方法名、參數列表和返回值類型都一樣) 方法重載
【劍指offer - C++/Java】5、用兩個棧實現佇列
牛客網題目連結:用兩個棧實現佇列 題目描述: 用兩個棧來實現一個佇列,完成佇列的Push和Pop操作。 佇列中的元素為int型別。 1、題目分析 首先我們知道資料結構中棧與佇列的特性是: 棧:資料先進後出 佇列:資料先進先出 假設現在佇列的兩個
android 7個生命週期方法分別在4個階段按一定的順序進行呼叫
4個階段如下: 1.開始Activity:在這個階段依次執行3個生命週期方法,分別是onCreate、onStart和onResume。 2.Activity失去焦點:如果在Activity獲得焦點的情況下進行其他的Activity或應用程式,當前Activity會失去焦點,在這一階段會依次執行onP
OC實現猜拳遊戲2.0(更簡單方法,用兩個物件、繼承、條件表示式、@proterty增強和點語法)
/*概述:玩家和電腦出拳,贏方加分,輸的一方不加分。每一局之後詢問玩家是否繼續。 分析:物件1:玩家,同電腦。方法:被詢問時選擇出拳並輸出選擇(列舉) 物件2:電腦,屬性:姓名,出的拳頭,分數。方法:出拳,判斷輸贏(傳玩家物件)並計分。
JS中 為什麼很多要用兩個!! 來判斷
比如 if(!!last) 這個就表示 if(last || false)。將判斷的型別,強轉成boolean型別。 如果last是null(或者undefine)的話,!last,返回的就是tru
C#實現氣泡屏保效果(用4個timer)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.
劍指Offer面試題7(Java版):用兩個棧實現佇列與用兩個佇列實現棧
題目:用兩個棧實現一個佇列。佇列的宣告如下,請實現它的兩個函式appendTail和deletedHead,分別完成在佇列尾部插入節點和在佇列頭部刪除節點的功能。 我們通過一個具體的例子來分析該佇列插入和刪除元素的過程。首先插入一個元素a,不妨先把它插入到stack1,此時
java中為什麼要用多執行緒
我們可以在計算機上執行各種計算機軟體程式。每一個執行的程式可能包括多個獨立執行的執行緒(Thread)。 執行緒(Thread)是一份獨立執行的程式,有自己專用的執行棧。執行緒有可能和其他執行緒共享一些資源,比如,記憶體,檔案,資料庫等。 當多個執行緒同時讀寫同一份共享資源
java中方法中宣告三個點“...”作用
public class Test { public static void main(String[] args) { String str[] = {"s","f"}; // test(); //可以為空 // test("www"); /
java面向物件程式設計的4個特徵以及重寫過載的區別
面向物件程式設計有4個特徵:封裝,繼承,多型,抽象。 1. 封裝,隱藏內部實現,只暴露公共行為 2. 繼承,提高程式碼的重用性 3. 多型,體現現實生活中相似物件的差異性 4. 抽象,抽取現實世界中相似物件的共同點 多型有四種體現形式: 1. 過載。 2. 重寫。 其中過
JAVA多執行緒設計4個執行緒,其中兩個執行緒每次對j增加1,另外兩個執行緒對j每次減少1。
最新在看一些執行緒方面的問題,也找一些題目來練手,看到一套題,JAVA設計4個執行緒,其中兩個執行緒每次對j增加1,另外兩個執行緒
【Java】echarts,highcharts中多個y軸對應的一個x軸的數量的Java對應排序程式碼(一個key下的多個value值對應key的位置)
1.首先,可以很輕鬆的從後臺資料庫獲取多個list。list如下: 2.根據其中一個的list的排序,獲取出x軸的陣列。(echarts,highcharts的X,Y軸一般為陣列) Java程式碼: String x[] = new String[li
蘋果手機4個隱藏小技巧,一個比一個實用!
今天小編想了解一下大家都使用蘋果手機多久了呢? 作為一個果粉,今天給大家分享蘋果手機4個隱藏小技巧,因為難找,可能很多人都不知道,一起來看看吧。 1. 快速調出支付寶二維碼 現在支付寶幾乎人手一個,每次先開啟手機再開啟支付寶找到收付款碼很麻煩,那麼如何快速調出支付寶二維碼呢?可以在主頁面新增小元
JAVA多執行緒之兩個執行緒同時寫一個檔案
1.多執行緒 執行緒是程式執行流的最小單元。是程序中的一個實體,是被系統獨立排程和分派的基本單位,執行緒自己不擁有系統資源,只擁有一點兒在執行中必不可少的資源,但它可與同屬一個程序的其它執行緒共享程序所擁有的全部資源。一個執行緒可以建立和撤消另一個執行緒,同一程序中的多個執行緒之間可以併發執行
php中按位元組擷取字串方法,(漢字佔兩個位元組,字母佔一個位元組,頁面編碼必須為utf-8)
function esub($str, $length = 0) { if($length < 1){ return $str; } //計算字串長度 $strlen = (strlen($str) + mb_str
要不要趕個時髦,去建設一個「 中臺 」?
很多技術人總是抱怨 新技術/新框架/新概念 太多了,總是學不完,抱怨實在是學不動了。哈哈,這不,最近「 中臺 」這麼火熱,要不要停止抱怨,再咬咬牙學一波? “很多人都擔心被技術新潮流所拋棄,所以當遇見不斷湧現的新技術時,總是慌忙的去學習。可是其中到底有多少是真正有用的?又有多少是曇花一現的技術呢?當你無法分辨
騰訊面試官問我Java中boolean型別佔用多少個位元組?我說一個,面試官讓我回家等通知
本文首發於微信公眾號:程式設計師喬戈裡 什麼是boolean型別,根據官方文件的描述: boolean: The boolean data type has only two possible values: true and false. Use this data type