这篇具有很好参考价值的文章主要介绍了【JavaScript】正则表达式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。
正则表达式
正则表达式用于对字符串模式匹配及检索替换文章来源:https://www.toymoban.com/news/detail-811031.html
一、语法
var patt=new RegExp(pattern,modifiers);
var patt=/pattern/modifiers;
二 、修饰符
修饰符 |
描述 |
i |
执行对大小写不敏感的匹配。 |
g |
执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 |
m |
执行多行匹配。 |
三、方括号
表达式 |
描述 |
[abc]
|
查找方括号之间的任何字符。 |
[^abc]
|
查找任何不在方括号之间的字符。 |
[0-9] |
查找任何从 0 至 9 的数字。 |
[a-z] |
查找任何从小写 a 到小写 z 的字符。 |
[A-Z] |
查找任何从大写 A 到大写 Z 的字符。 |
[A-z] |
查找任何从大写 A 到小写 z 的字符。 |
[adgk] |
查找给定集合内的任何字符。 |
[^adgk] |
查找给定集合外的任何字符。 |
(red|blue|green) |
查找任何指定的选项。 |
四、元字符
元字符 |
描述 |
. |
查找单个字符,除了换行和行结束符。 |
\w |
查找数字、字母及下划线。 |
\W |
查找非单词字符。 |
\d |
查找数字。 |
\D |
查找非数字字符。 |
\s |
查找空白字符。 |
\S |
查找非空白字符。 |
\b |
匹配单词边界。 |
\B |
匹配非单词边界。 |
\0 |
查找 NULL 字符。 |
\n |
查找换行符。 |
\f |
查找换页符。 |
\r |
查找回车符。 |
\t |
查找制表符。 |
\v |
查找垂直制表符。 |
\xxx |
查找以八进制数 xxx 规定的字符。 |
\xdd |
查找以十六进制数 dd 规定的字符。 |
\uxxxx |
查找以十六进制数 xxxx 规定的 Unicode 字符。 |
五、 量词
量词 |
描述 |
n+ |
匹配任何包含至少一个 n 的字符串。例如,/a+/ 匹配 “candy” 中的 “a”,“caaaaaaandy” 中所有的 “a”。 |
n* |
匹配任何包含零个或多个 n 的字符串。例如,/bo*/ 匹配 “A ghost booooed” 中的 “boooo”,“A bird warbled” 中的 “b”,但是不匹配 “A goat grunted”。 |
n? |
匹配任何包含零个或一个 n 的字符串。例如,/e?le?/ 匹配 “angel” 中的 “el”,“angle” 中的 “le”。 |
n{X} |
匹配包含 X 个 n 的序列的字符串。例如,/a{2}/ 不匹配 “candy,” 中的 “a”,但是匹配 “caandy,” 中的两个 “a”,且匹配 “caaandy.” 中的前两个 “a”。 |
n{X,} |
X 是一个正整数。前面的模式 n 连续出现至少 X 次时匹配。例如,/a{2,}/ 不匹配 “candy” 中的 “a”,但是匹配 “caandy” 和 “caaaaaaandy.” 中所有的 “a”。 |
n{X,Y} |
X 和 Y 为正整数。前面的模式 n 连续出现至少 X 次,至多 Y 次时匹配。例如,/a{1,3}/ 不匹配 “cndy”,匹配 “candy,” 中的 “a”,“caandy,” 中的两个 “a”,匹配 “caaaaaaandy” 中的前面三个 “a”。注意,当匹配 “caaaaaaandy” 时,即使原始字符串拥有更多的 “a”,匹配项也是 “aaa”。 |
n$ |
匹配任何结尾为 n 的字符串。 |
^n |
匹配任何开头为 n 的字符串。 |
?=n |
匹配任何其后紧接指定字符串 n 的字符串。 |
?!n |
匹配任何其后没有紧接指定字符串 n 的字符串。 |
六、RegExp对象方法
方法 |
描述 |
compile |
在 1.5 版本中已废弃。 编译正则表达式。 |
exec |
检索字符串中指定的值。返回找到的值,并确定其位置。 |
test |
检索字符串中指定的值。返回 true 或 false。 |
toString |
返回正则表达式的字符串。 |
七、支持正则的String的方法
方法 |
描述 |
search |
检索与正则表达式相匹配的值。 |
match |
找到一个或多个正则表达式的匹配。 |
replace |
替换与正则表达式匹配的子串。 |
split |
把字符串分割为字符串数组。 |
九 、正则表达式演示
var targetStr="123456789";
var reg=/^[0-9]{0,}$/;
var b = reg.test(targetStr);
var targetStr="HelloWorld";
var reg=/^[a-z0-9A-Z_]{6,16}$/;
var b = reg.test(targetStr);
总结
常用正则表达式:文章来源地址https://www.toymoban.com/news/detail-811031.html
需求 |
正则表达式 |
用户名 |
/^[a-zA-Z ][a-zA-Z-0-9]{5,9}$/ |
密码 |
/^[a-zA-Z0-9 _-@#& *]{6,12}$/ |
前后空格 |
/^\s+|\s+$/g |
电子邮箱 |
/^[a-zA-Z0-9 _.-]+@([a-zA-Z0-9-]+[.]{1})+[a-zA-Z]+$/ |
到了这里,关于【JavaScript】正则表达式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!