正则表达式简单梳理(电子邮件示例)

<template>
	<view class="content">
		<view class="text-area">
			<text class="title">正则表达式,来检查字符串是否符合规则或将符合的规则的挑选出来</text>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
			}
		},
		onLoad() {
			// this.meansOne();
			// this.meanstWO();
			this.meansThree();
		},
		methods: {
			// 方法一
			meansOne: function() {
				/*
				 *创建一个正则表达式检查字符串是否有aaa 
				 * 通过量词来判断一个内容出现的次数,量词只对前面一个词起作用
				 * {n}正好出现n次
				 * {n,m}出现n-m次
				 * {n,}出现n次以上
				 * +至少一个
				 * *0或多个
				 * ?0或一个
				 * ^n 检测是否以n开头
				 * ^ 表示开头
				 * $表示结尾
				 */
				// var reg = /(ab){2}/
				// var reg = /b{3}/
				// 判断出现abc,abbc,abbbc
				var reg = /ab+c/
				var str = "acdasdaaabbcb"
				// console.log(reg.test(str))
				//检测是否以132开头
				//^132
				// var reg = /^(132)/
				var reg = /(132)$/
				var phone = "13221366666132"
				console.log(reg.test(phone))
				// 手机号规则 11位数、开头为1、第二位3-9任意数值、
				var reg = /^1[3-9][0-9]{9}$/

			},
			// 方法二
			meanstWO: function() {
				/*
				 *检查一个字符串里面是否有 .
				 * .代表任意字符
				 * 在正则表达式中\为转义字符
				 * \.代表.
				 * \\ 代表 \
				 * 注意使用构造函数时,由于它的参数是字符串,而\是字符串中的转义字符
				 * 使用\时用\\来代替
				 */
				var reg = /\./
				var str = "bbb."
				// console.log(reg.test(str))
				var reg = new RegExp("\\.")
				var str = "bbb."
				// console.log(reg.test(str))
				/*
				 * \w -任意字母、数字、下划线类似[A-z0-9_]
				 * \W - 除了字母、数字、下划线
				 * \d - 任意数字
				 * \D - 除了数字类似[^0-9]
				 * \s - 空格
				 * \S - 除了空格
				 * \b - 单词边界
				 * \B - 除了单词边界
				 */
				var reg = /\d/
				var str = "123123123"
				// console.log(reg.test(str))

				// 创建一个正则表达式检查一个字符串中是否有hello单词
				var reg = /\bhello\b/
				var str = "heloo hello oo"
				// console.log(reg.test(str))
				//去除空格
				var str = "      asdasd"
				// var arr =  str.replace(/^\s/,"")
				// 去掉开头
				// var arr =  str.replace(/^\s*/,"")
				// 去掉结尾
				var arr =  str.replace(/\s*$/,"")
				// 去掉结尾或者结尾 /^\s*|\s*$/g:匹配开头与结尾的
				var arr =  str.replace(/^\s*|\s*$/g,"")
				console.log(arr)
				
			},
			// 示例:电子邮件
			meansThree: function() {
				/*
				*电子邮件的格式:******@
				* -开始任意字母数值下划线
				* -\w{3,} (\.\w+)* @ [A-z0-9]+ (\.[A-z]{2,5}){1,2}
				*/ 
			 var emailReg = /^\w{3,}(\.\w+)*@[A-z0-9]+(\.[A-z]{2,5}){1,2}$/
			 var email = prompt("请输入电子邮件")
			 console.log(emailReg.test(email))


			}
		}
	}
</script>

<style>
	.content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}


	.title {
		font-size: 36rpx;
		color: #000;
		font-size: 20rpx;
	}
</style>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值