108-(正则表达式)常用的字符串方法

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>常用字符串方法</title>
</head>
<body>
	<!-- 字符串拆为数组? split() 数组转成字符串? join() toString  , String()-->
	<script>
		// 正则表达式是由一个字符序列形成的搜索模式。
		var arr = [1, 2, 3];
		console.log(String(arr));
		console.log(arr.toString());
		var str1 = 'abcdef';
		console.log(str1.charAt(2));

		// 正则表达式: 规则表达式  Regular Expression
		
		// search() 检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子字符串的起始位置; 如果找不到返回 -1
		console.log(str1.search('g')); // -1
		console.log(str1.search('cd')); // 2
		console.log(str1.search('cf')); // -1

		// substring() 截取字符串, 如果第二个参数不写, 则从指定的开始位置截取到最后, 返回的是截取到的内容
		console.log(str1.substring(0, 4)); // [) 不包含结束位置
		// replace
		var str2 = 'to mark a matched substring for future reference';
		// 将 str2的每个单词首字母改为大写
		// split
		// charAt

		//自定义函数改变首字母为大写
		function capitalizeWords(str){
			let words = str.split(' ') //将字符串拆分成单词数组
			for(let i = 0; i < words.length; i++){
				let word = words[i];
				let capitalizeWord = word.charAt(0).toUpperCase() + word.slice(1);
				words[i] = capitalizeWord;
			}
			return words.join(' '); //将单词重新组合成字符串
		}

		var word = capitalizeWords(str2);
		console.log(word);



		console.log('============')
		function getParamsObj(str) {
			var urlArr = str.split('?');//将域名和提交的参数做分割
			if (urlArr.length === 2) {
				var paramsStr = urlArr[1]; //取后者,后者即为参数
				// console.log(paramsStr)
				var paramsArr = paramsStr.split('&');
				// console.log(paramsArr);

				var obj = {};
				for(var i = 0; i < paramsArr.length; i++) {
					var keyVal = paramsArr[i].split('=');
					// console.log(keyVal[0]);
					// console.log(keyVal[1]);
					obj[keyVal[0]] = keyVal[1];
				}
				return obj;
			}
			
		}

		console.log(getParamsObj('https://www.baidu.com/s?a=张三&age=18&gender=1&money=10000'));

	</script>
</body>
</html>

上述运行结果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七色的天空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值