jq正则表达式_JAVA 正则表达式

jq正则表达式_JAVA 正则表达式一、JavaScript正则表达式正则表达式(英语:RegularExpression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。搜索模式可用于文本搜索和文本替换。什么是正则表达式?正则表达式是由一个字符序列形成的搜索模式。当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。正则表达式可以是一个简单的字符,或一个更…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、JavaScript正则表达式

正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。

搜索模式可用于文本搜索和文本替换。

什么是正则表达式?

正则表达式是由一个字符序列形成的搜索模式。

当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。

正则表达式可以是一个简单的字符,或一个更复杂的模式。

正则表达式可用于所有文本搜索和文本替换的操作。

语法

/正则表达式主体/修饰符(可选)

其中修饰符是可选的。

实例:

var patt = /runoob/i

实例解析:

/runoob/i  是一个正则表达式。

runoob  是一个正则表达式主体(用于检索)。

i  是一个修饰符(搜索不区分大小写)。

使用字符串方法

在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。

search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

search() 方法使用正则表达式

实例:使用正则表达式搜索 “Runoob” 字符串,且不区分大小写:

var str = “Visit Runoob!”;

var n = str.search(/Runoob/i);

console.log(n );//输出结果为:6

search() 方法使用字符串

search 方法可使用字符串作为参数。字符串参数会转换为正则表达式:

实例:检索字符串中 “Runoob” 的子串:

var str = “Visit Runoob!”;

var n = str.search(“Runoob”);

console.log(n );//输出结果为:6

replace() 方法使用正则表达式

实例:使用正则表达式且不区分大小写将字符串中的 Microsoft 替换为 Runoob :

var str = ‘Visit Microsoft!’;

var txt = str.replace(/microsoft/i,”Runoob”);

console.log(txt);//结果输出为:Visit Runoob!

你注意到了吗?

正则表达式参数可用在以上方法中 (替代字符串参数)。正则表达式使得搜索功能更加强大(如实例中不区分大小写)。

replace() 方法使用字符串

实例:replace() 方法将接收字符串作为参数:

var str = ‘Visit Microsoft!’;

var txt = str.replace(“Microsoft”,”Runoob”);

console.log(txt);//结果输出为:Visit Runoob!

正则表达式修饰符

修饰符可以在全局搜索中不区分大小写:

修饰符

描述

i

执行对大小写不敏感的匹配。

g

执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

m

执行多行匹配。

正则表达式模式

方括号用于查找某个范围内的字符:

表达式

描述

[abc]

查找方括号之间的任何字符。

[0-9]

查找任何从 0 至 9 的数字。

(x|y)

查找任何以

元字符是拥有特殊含义的字符:

元字符

描述

d

查找数字。

s

查找空白字符。

b

匹配单词边界。

uxxxx

查找以十六进制数 xxxx 规定的 Unicode 字符。

量词:

量词

描述

n+

匹配任何包含至少一个n的字符串。

n*

匹配任何包含零个或多个n的字符串。

n?

匹配任何包含零个或一个n的字符串。

使用 RegExp 对象

在 JavaScript 中,RegExp 对象是一个预定义了属性和方法的正则表达式对象。

使用 test()

test() 方法是一个正则表达式方法。

test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

以下实例用于搜索字符串中的字符 “e”:

实例:

var patt = /e/;

var res = patt.test(“The best things in life are free!”);

console.log(res );//字符串中含有 “e”,所以该实例输出为:true

你可以不用设置正则表达式的变量,以上两行代码可以合并为一行:

/e/.test(“The best things in life are free!”)

使用 exec()

exec() 方法是一个正则表达式方法。

exec() 方法用于检索字符串中的正则表达式的匹配。

该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。

以下实例用于搜索字符串中的字母 “e”:

实例:

var res = /e/.exec(“The best things in life are free!”);

console.log(res? res[0] : res);//字符串中含有 “e”,所以该实例输出为:e

正则表达式表单验证实例:

/*是否带有小数*/

function isDecimal(strValue ) {

var objRegExp= /^d+.d+$/;

return objRegExp.test(strValue);

}

/*校验是否中文名称组成 */

function ischina(str) {

var reg=/^[u4E00-u9FA5]{2,4}$/; /*定义验证表达式*/

return reg.test(str); /*进行验证*/

}

/*校验是否全由8位数字组成 */

function isStudentNo(str) {

var reg=/^[0-9]{8}$/; /*定义验证表达式*/

return reg.test(str); /*进行验证*/

}

/*校验电话码格式 */

function isTelCode(str) {

var reg= /^((0d{2,3}-d{7,8})|(1[3584]d{9}))$/;

return reg.test(str);

}

/*校验邮件地址是否合法 */

function IsEmail(str) {

var reg=/^w+@[a-zA-Z0-9]{2,10}(?:.[a-z]{2,4}){1,3}$/;

return reg.test(str);

}

二、JavaScriptRegExp对象

RegExp 对象

正则表达式是描述字符模式的对象。

正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。

语法

var patt=new RegExp(pattern,modifiers);

或者更简单的方式:

var patt=/pattern/modifiers;

pattern(模式) 描述了表达式的模式

modifiers(修饰符) 用于指定全局匹配、区分大小写的匹配和多行匹配

注意: 当使用构造函数创造正则对象时,需要常规的字符转义规则(在前面加反斜杠 )。比如,以下是等价的:

var re = new RegExp(“\w+”);

var re = /w+/;

修饰符

修饰符用于执行区分大小写和全局匹配:

修饰符

描述

执行对大小写不敏感的匹配。

执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

m

执行多行匹配。

方括号

方括号用于查找某个范围内的字符:

表达式

描述

查找方括号之间的任何字符。

查找任何不在方括号之间的字符。

[0-9]

查找任何从 0 至 9 的数字。

[a-z]

查找任何从小写 a 到小写 z 的字符。

[A-Z]

查找任何从大写 A 到大写 Z 的字符。

[A-z]

查找任何从大写 A 到小写 z 的字符。

[adgk]

查找给定集合内的任何字符。

[^adgk]

查找给定集合外的任何字符。

(red|blue|green)

查找任何指定的选项。

元字符

元字符(Metacharacter)是拥有特殊含义的字符:

元字符

描述

查找单个字符,除了换行和行结束符。

查找单词字符。

查找非单词字符。

查找数字。

查找非数字字符。

查找空白字符。

查找非空白字符。

匹配单词边界。

匹配非单词边界。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/191569.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • GB50174-2008电子信息系统机房设计规范_根据电子信息系统机房设计规范

    GB50174-2008电子信息系统机房设计规范_根据电子信息系统机房设计规范GB50174-2008《电子信息系统机房设计规范》 转载于:https://blog.51cto.com/56421/475664

  • linux命令杀进程脚本_shell脚本获取进程号并杀死进程

    linux命令杀进程脚本_shell脚本获取进程号并杀死进程由于代码调试进程一直存在需要手动杀死,比较费时,写个小脚本节省下时间#viclear.sh​!/bin/bashecho”$1″pid=`ps-ef|grep$1|grep-vgrep|grep-vbash|awk'{print$2}’`echo”$pid”if[-n”$pid”]thenecho”kill-9pid:$pid”kill-9$pidfi[点击并拖拽以移动]​#chmod.

  • OpenProcessToken这个函数用法[通俗易懂]

    OpenProcessToken这个函数用法[通俗易懂] GetCurrentProcessID得到当前进程的IDOpenProcessToken得到进程的令牌句柄LookupPrivilegeValue查询进程的权限AdjustTokenPrivileges调整令牌权限要对一个任意进程(包括系统安全进程和服务进程)进行指定了写相关的访问权的OpenProcess操作,只要当前进程具有SeDeDebug权限就可以了。要是一个用户是Admi

  • 怎么安装pandas库_python第三方库pandas

    怎么安装pandas库_python第三方库pandas问题现象:PyCharm中运行程序,报错,提示“ModuleNotFoundError:Nomodulenamed’pandas’”第一种方法:1.电脑WIN+R,输入cmd,输入pipinstallpandas,等待下载完成即可。2.如果有以下提示,说明pip的版本可能不一致,需要解决冲突。想更新pip,输入pipinstall–upgradepip,报错,提示“Nomodulenamedpip”3.解决方法,输入python-mensu

  • 因果图分析法[通俗易懂]

    因果图分析法[通俗易懂]目录一、因果图法1.理解二、因果图需要掌握的基本知识1.关系2.约束3.输出条件的约束4.输出条件的约束5.原因和结果表示6.中间节点三、因果图设计测试用例的步骤四、优缺点1.优点2.缺点五、实例1.案例2.分析案例六、为什么要有中间节点1.无中间节点因果图2.有中间节点因果图一、因果图法1.理解因果图是一种简化了的逻辑图,能直观的表明程序输入条件(原因)和输出动作(结果)之间的相互关系; 因果图法是借助图形来设计测试

  • 怎么成为一个比较成功的IT人士

    怎么成为一个比较成功的IT人士

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号