js中字符的替换(如用单引号提换双引号)

标签: js 字符替换 双引号替换单引号
321人阅读 评论(0) 收藏 举报

最近遇到一个问题,需要将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-常用替换“单引号”、“双引号”、“尖括号

js-常用替换“单引号”、“双引号”、“尖括号”……   var str=" str=str.replace(/\'/g,"’");//替换半角单引号为全角单引号 str=...
  • bluexuemei
  • bluexuemei
  • 2015-01-09 15:17:21
  • 2066

js 单引号替换成双引号,双引号替换成单引号 操作

1.双引号替换成单引号 var _adrobj = JSON.stringify(address).replace(/\"/g,"'");ps:var a = {a:1,b:2}; JSON.stri...
  • Joyhen
  • Joyhen
  • 2015-01-29 15:08:20
  • 28589

replace替换单引号或双引号

mystring=replace(mystring,chr(39),"&acute;") '替换单引号 mystring=replace(mystring,chr(34),"&quot;")  ...
  • liuyunfan
  • liuyunfan
  • 2014-06-24 16:07:14
  • 17346

使用EL表达式解决由单引号,双引号,换行导致的问题

之前说过,在JSP中接收ACTION中的参数的时候,比较好用的一种就是EL表达式。 但是,在js中接收参数使用EL表达式时必须用引号括起来,类似  value:’${param}‘;  当param...
  • skyrunner06
  • skyrunner06
  • 2014-03-14 21:07:49
  • 4206

js中 单引号 双引号 参数问题 单引号 替换成 \' 双引号 替换成 \" 等

.replace(/\'/g, "\\'")    ->  ' 替换成  \' .replace(/\"/g, "\\\"")  ->  " 替换成 \" .replace(/   替换成...
  • CsethCRM
  • CsethCRM
  • 2013-11-14 15:42:51
  • 6146

js中单引号和双引号的使用区别

1.引入 在jquery或者js中拼接字符串时,使用单引号和双引号是没有区别的,都可以被成功解析成字符串,但是,在一些复杂的字符串拼接时,需要单引号和双引号的混合使用时,就需要注意了。最近在项目中写...
  • ya_1249463314
  • ya_1249463314
  • 2016-12-21 11:30:41
  • 8652

JavaScript中字符串的拼接出错,单引号双引号混合使用

在各种编程语言中均有字符串数据类型,但在JavaScript中的使用较为特殊,JavaScript中的字符串类型可以同时使用双引号(“”)或单引号(‘’)作为界定符,例如: var strDem...
  • lemmata
  • lemmata
  • 2016-12-24 23:11:42
  • 3722

Oracle 替换字符为单引号

chr(39)表示单引号; chr(34)表示双引号; 例子,把以逗号分隔的字符串改成'','','',''样式  chr(39) || REPLACE(需要替换的字段,',',chr(...
  • songyanfei1205
  • songyanfei1205
  • 2017-03-30 10:16:57
  • 1824

单引号、双引号在javascript、HTML中的转义字符

单引号、双引号在javascript、HTML中的转义字符
  • paincupid
  • paincupid
  • 2015-12-15 20:15:46
  • 3299
    个人资料
    等级:
    访问量: 7500
    积分: 193
    排名: 91万+
    文章分类