正则表达

根据菜鸟教程(最近写好几个题都有正则表达,一直不很懂,准备看一手,还有js代码

正则表达

  • 符号:

定位符:
^ 和 $ 分别指字符串的开始与结束

\b 描述单词的前或后边界
如果它位于要匹配的字符串的开始,它在单词的开始处查找匹配项。如果它位于字符串的结尾,它在单词的结尾处查找匹配项。

\B 表示非单词边界

限定符
? 通配符匹配文件名中的 0 个或 1 个字符
* 通配符匹配零个或多个字符
+ 匹配一个或者多个
.匹配除换行符 \n 之外的任何单字符

[]:
[…] 匹配[]里的所有字符
[^…] 匹配除了[]里的所有字符

{}:
{n,m}
其中n <= m。最少匹配 n 次且最多匹配 m 次
其他写法:
{n,} {m}

()
用圆括号 () 将所有选择项括起来
() 会把每个分组里的匹配的值保存起来

通过在 *、+ 或 ? 限定符之后放置 ?,该表达式从"贪婪"表达式转换为"非贪婪"表达式或者最小匹配。

要匹配以上标志性字符时要用\转义

  • 修饰符

i ignore - 不区分大小写
g global - 全局匹配
m multi line - 多行匹配
s 特殊字符圆点 . 中包含换行符 \n

\s 是匹配所有空白符,包括换行
\S 非空白符,不包括换行。
\w匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
其他

\d	
匹配一个数字字符。等价于 [0-9]。

\D	
匹配一个非数字字符。等价于 [^0-9]。

\f	
匹配一个换页符。等价于 \x0c 和 \cL。

\n	
匹配一个换行符。等价于 \x0a 和 \cJ。

\r	
匹配一个回车符。等价于 \x0d 和 \cM。

\s	
匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。

\S	
匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。

\t	
匹配一个制表符。等价于 \x09 和 \cI。

\v	
匹配一个垂直制表符。等价于 \x0b 和 \cK。

\w	
匹配字母、数字、下划线。等价于'[A-Za-z0-9_]'。

\W	
匹配非字母、数字、下划线。等价于 '[^A-Za-z0-9_]'

javaScript 可以通过不同的方式来获取数据:

  • 使用 document.write() 方法将内容写到 HTML 文档中。

  • 使用 innerHTML 写入到 HTML 元素:
    操作 HTML 元素:

  • 如需从 JavaScript 访问某个 HTML 元素,可以使用 document.getElementById(id) 方法。

  • 使用 “id” 属性来标识 HTML 元素,并 innerHTML 来获取或插入元素内容:

  • document.getElementById(“demo”) 是使用 id 属性来查找 HTML 元素的 JavaScript 代码 。

  • innerHTML = “段落已修改。” 是用于修改元素的 HTML 内容(innerHTML)的 JavaScript 代码。

eg:

  <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8"> 
    <title>菜鸟教程(runoob.com)</title> 
    <script>
    function myFunction(){
	document.getElementById("demo").innerHTML="替换内容";
    }
    </script>
    </head>
    <body>
	
    <h1>我的 Web 页面</h1>
    <p id="demo">替换前</p>
    <button type="button" onclick="myFunction()">点击这里</button>
	
    </body>
    </html>

js的调试

try 要测试的程序
throw 抛出错误
finally 最终都会执行
eg:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>
<p>不管输入是否正确,输入框都会再输入后清空。</p>
<p>请输入 5 ~ 10 之间的数字:</p>

<input id="demo" type="text">
<button type="button" onclick="myFunction()">点我</button>

<p id="p01"></p>

<script>
function myFunction() {
  var message, x;
  message = document.getElementById("p01");
  message.innerHTML = "";
  x = document.getElementById("demo").value;
  try { 
    if(x == "") throw "值是空的";
    if(isNaN(x)) throw "值不是一个数字";
    x = Number(x);
    if(x > 10) throw "太大";
    if(x < 5) throw "太小";
  }
  catch(err) {
    message.innerHTML = "错误: " + err + ".";
  }
  finally {
    document.getElementById("demo").value = "";
  }
}
</script>

</body>
</html>

debugger 关键字用于停止执行 JavaScript,并调用调试函数。

这个关键字与在调试工具中设置断点的效果是一样的。

使用 console.log() 写入到浏览器的控制台。
使用 window.alert() 弹出警告框。

DMO

  • 改变HTML内容

通过 id 找到 HTML 元素

1.通过标签名找到 HTML 元素

var x=document.getElementById("main").innerHTML="新内容";

还有一种写法:

var x=document.getElementById("main");
x.innerHTML="新内容";
  1. 通过类名找到 HTML 元素
    函数getElementsByClassName定义
x=document.getElementsByClassName("intro");
  • 改变HTML样式
document.getElementById(id).style.样式类型=新样式
  • 改变 HTML 属性
document.getElementById(id).旧属性值=新属性值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值