1. 程式人生 > >js中字元的替換(如用單引號提換雙引號)

js中字元的替換(如用單引號提換雙引號)

最近遇到一個問題,需要將Json轉為String(  js中json物件和string互轉 ),String物件內的單引號需要為雙引號,就查了一下,做了一個總結。

JS提供的replace()方法正好解決了字元替換的問題。

stringObject.replace(regexp/substr,replacement)
引數 描述
regexp/substr

必需。規定子字串或要替換的模式的 RegExp 物件。

請注意,如果該值是一個字串,則將它作為要檢索的直接量文字模式,而不是首先被轉換為 RegExp 物件。

replacement 必需。一個字串值。規定了替換文字或生成替換文字的函式。
如果 regexp 具有全域性標誌 g,那麼 replace() 方法將替換所有匹配的子串。否則,它只替換第一個匹配子串。

下面是一個Json轉String後,用雙引號提換單引號;

<!DOCTYPE html >
<html > 
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<input type="button" value="click" onclick="clickMe()" />
		<script type="text/javascript">
			var w = {a:"A",b:"B",c:"C"};
			function clickMe(){
				w = json2str(w);
				console.log(w);
				//引號提換
				w = w.replace(/'/g, '"');
				console.log(w);
			}
			/** 
			* json物件轉字串形式 
			*/ 
			function json2str(o) { 
			var arr = []; 
			var fmt = function(s) { 
			if (typeof s == 'object' && s != null) return json2str(s); 
			return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s; 
			} 
			for (var i in o) arr.push("'" + i + "':" + fmt(o[i])); 
			return '{' + arr.join(',') + '}'; 
			} 
		</script>
	</body>
</html>
實現效果如下


全劇替換

<!DOCTYPE html >
<html > 
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<input type="button" value="click" onclick="clickMe()" />
		<script type="text/javascript">
			function clickMe(){
				var str="Welcome to Microsoft! "
				str=str + "We are proud to announce that Microsoft has "
				str=str + "one of the largest Web Developers sites in the world."
				
				document.write(str.replace(/Microsoft/g, "W3School"))
			}
			
		</script>
	</body>
</html>
效果如下


把字串中所有單詞的首字母都轉換為大寫:

<!DOCTYPE html >
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>

	<body>
		<input type="button" value="click" onclick="clickMe()" />
		<script type="text/javascript">
			function clickMe() {
				name = 'aaa bbb ccc';

				uw = name.replace(/\b\w+\b/g, function(word) {
					return word.substring(0, 1).toUpperCase() + word.substring(1);
				});

				document.write(uw);

			}
		</script>
	</body>

</html>
結果如下



相關推薦

js字元替換引號引號

最近遇到一個問題,需要將Json轉為String(  js中json物件和string互轉 ),String物件內的單引號需要為雙引號,就查了一下,做了一個總結。 JS提供的replace()方法正好解決了字元替換的問題。 stringObject.replace(reg

Html如何獲取session的值登入後顯示XX歡迎您!

話不多說,直接切入正題。 相信大家經常在各大網站上,登入過自己的帳號吧,那麼就一定應該見過在點選登入之後,會發現在top的頂部狀態列中或是頁面中央顯示著 “xx歡迎您!”之類的語句。 雖然這個也可以通過jsp直接獲得,可是這樣的操作可能有一種偷盜的感覺,現在

【OS大作業】多執行緒統計txt檔案字元個數Java實現

問題描述 給定一個txt檔案,利用不同個數的執行緒查詢檔案中某字元的個數,探究執行緒個數與查詢時間的關係。 本作業程式碼使用JAVA實現,版本為10.0.2,使用的IDE為Eclipse4.9.0. 結果測試所用的txt檔案內容為英文,編碼格式為UTF-8。 原始碼 第一版程式碼:(

js閉包積累總結

結果 ons 網頁 不能 創建 ner alert 子函數 存在 什麽是閉包: 當內部函數 在定義它的作用域 的外部 被引用時,就創建了該內部函數的閉包 ,如果內部函數引用了位於外部函數的變量,當外部函數調用完畢後,這些變量在內存不會被 釋放,因為閉包需要它們. 例子1 f

node.js的路由url初步

UC out root 目錄 port name login 方法 是個 1、建立n4_root.js var http = require(‘http‘); var url = require(‘url‘); //這是node.

Js常用知識點typeof、動態屬性、變量作用域

常用知識 sage 打印 bject 理解 各類 swa clas java 1、Js中各類型的常量表示形式:Number:number String:string Object:objec 2、typeof運算符在Js中的使用:用於判斷某一對象是何種類型,返

何在Eclipse 查看Objects的源代碼

hit location 源代碼 對話框 open out 代碼 選中 快捷 今天突然想看Objects的源碼,結果失敗了,總結了一下,貼出來。 一般查看源碼的流程: 使用快捷鍵Ctri+Shit+T出現Open Type的對話框,在裏面直接輸入類名,回車就行; 在Ecl

Cookie和Session在Node.JS的實踐

快速理解 開發工具 ren 發揮 超過 see 技術點 用戶 img Cookie和Session在Node.JS中的實踐(二) cookie篇在作者的上一篇文章Cookie和Session在Node.JS中的實踐(一)已經是寫得算是比較詳細了,有興趣可以翻看,這篇是ses

先驗概率、後驗概率、似然函數與機器學習概率模型邏輯回歸的關系理解

集中 並且 結果 概率論 但我 evidence logs 硬幣 之前 看了好多書籍和博客,講先驗後驗、貝葉斯公式、兩大學派、概率模型、或是邏輯回歸,講的一個比一個清楚 ,但是聯系起來卻理解不能 基本概念如下 先驗概率:一個事件發生的概率 \[P(y)\] 後驗概

先驗概率、後驗概率、似然函式與機器學習概率模型邏輯迴歸的關係理解

看了好多書籍和部落格,講先驗後驗、貝葉斯公式、兩大學派、概率模型、或是邏輯迴歸,講的一個比一個清楚 ,但是聯絡起來卻理解不能   基本概念如下   先驗概率:一個事件發生的概率 \[P(y)\] 後驗概率:一個事件在另一個事件發生條件下的條件概率 \[P(y|x

JS字元問題 二進位制/十進位制/十六進位制及ASCII碼之間的轉換

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

MySql資料庫查詢修改表字元編碼charset的方法

MySQL字符集多種多樣,下面為您列舉了其中三種最常見的MySQL字符集檢視方法,該方法供您參考,希望對您學習MySQL資料庫能有所啟迪。 一、檢視MySQL資料庫伺服器和資料庫MySQL字符集。 mysql> show variables like '%char%

JSDOM操作

事件(行為,操作)--------------------     觸發事件                                                              註冊事件                                

JS陣列實現倒序遍歷陣列,陣列連線字串

// =================== 求最大值===================================== <script> var arr = [10,35,765,21345,678,89]; va

如何 給 文章 新增 標籤 以及 如何 讓 js 的資料 跟隨 form 表 一起提交到 後臺

設計思路 檔案和,標籤的關係,多對多的關係。 需要一個標籤表,和,文章標籤中間表。 文章和,標籤的關係,多對多的關係。 一個標籤對應多篇文章,一篇文章對應多個標籤 。 標籤,增刪改查,可以在後臺管理。 這個文章標籤中間表,是如果1篇文章有幾個標籤,就有幾條資料,只是對應同一個文章id

js瀏覽器物件BOM

4.8 JS瀏覽器物件(BOM) BOM (Browser Object Model )瀏覽器物件模型,它是由多個JS物件共同組成的, JS是一種動態語言,它可以在頁面上做很多動作性的東西,比如:驗證表單,動態給網頁新增內容,動態修改網頁,但是網頁的內容通常都是由瀏覽器來進行解析,所以JS針

js常用的事件,onclick 擊事件、onblur 失去焦點事件、onchange改變事件、onmouseover滑鼠進入事件、onmouseout滑鼠移除事件、onsubmit提交事件

onclick 單擊事件 onblur 失去焦點事件 onchange 當物件或選中區的內容改變時觸發。 onmouseover 當用戶將滑鼠指標移動到物件內時觸發。 onmouseout 當用戶將滑鼠指標移出物件邊界時觸發。 onsubmit 當表單將要被提交時觸發。

淺談js的原型ECMAScript標準層面

在網上面搜了一下“什麼是js的原型,以及什麼是_proto_”啥的。。。。,然後出來的全是一堆什麼 alert(xxx.prototype===yyy._proto_)//true//false啥的,有毒吧!!還有原型鏈就更加不用說了,看著就頭疼,反正我是看不懂,全靠死記,

CTCI系列--1.4 字元替換C語言

題目:Write a method to replace all spaces in a string with ‘%20’.You may assume that the string has sufficient space at the end of

C++ 字元替換注意點,適合新手

直接上程式碼,注意char * 的定義和內容的初始化 void Replace(char *str, int nCount,char findChar, char replaceChar) {if (str==NULL) return;for (int i = 0; i&