let numbersRegex = /\d+/;布局函数形式:

let regex = new RegExp('pattern', 'flags');

同样的例子,利用布局函数形式:

let numbersRegex = new RegExp("\d+", "");

把稳:在布局函数中写入字符串时,须要对分外字符进行转义。

2. 正则表达式模式

正则表达式的主体部分是“模式”,用于描述要匹配的文本构造。
以下是一些基本模式示例

jsp中的正则表达式详解JavaScript中的RegExp深刻懂得正则表达式 Python

\d 匹配任何数字(等同于 [0-9])\w 匹配字母、数字或下划线(等同于 [a-zA-Z0-9_])\s 匹配任何空缺字符(包括空格、制表符、换行符等). 匹配除换行符之外的任意单个字符^ 匹配字符串的开始位置$ 匹配字符串的结束位置 表示前面的元素可以重复零次或多次+ 表示前面的元素至少重复一次? 表示前面的元素可选,涌现零次或一次{n} 表示前面的元素必须重复n次{n,} 表示前面的元素至少重复n次{n,m} 表示前面的元素重复次数在n到m之间3. 标志位

标志位位于正则表达式末端,用于改变匹配行为:

g 全局搜索,匹配字符串中的所有符合条件的位置,而不是只找到第一个就停滞。
i 忽略大小写。
m 多行模式,使^和$可以匹配每一行的开始和结束。
4. 正则方法运用

在JavaScript中,我们可以利用以下内置的方法来操作正则表达式:

test():检测字符串是否符合某个正则表达式。

let isNumber = /\d+/.test("123");console.log(isNumber); // truematch():在字符串上实行查找,返回匹配结果数组或者null。

let matches = "Hello 123 World".match(/\d+/);console.log(matches[0]); // "123"exec():在字符串上实行查找,返回包含匹配信息的工具或者null。

let reg = /\d+/g;let matchResult = reg.exec("Hello 123 World");console.log(matchResult[0]); // "123"search():返回字符串中第一个匹配项的索引,如果没有找到则返回-1。

let index = "Hello 123 World".search(/\d+/);console.log(index); // 6replace():利用新的子串更换与正则表达式匹配的子串。

let replacedStr = "Hello 123 World".replace(/\d+/, "456");console.log(replacedStr); // "Hello 456 World"split():根据正则表达式分隔字符串,返回一个由分割后的子串组成的数组。

let words = "Hello World, How are you?".split(/\s,\s/);console.log(words); // ["Hello World", "How are you?"]5. 高等技巧非捕获组 (?:...):不捕获括号内的内容,仅作分组之用。
负向前瞻 (?=...) 和负向后瞻 (?!...):用来断言后面或前面的内容,但并不包含在匹配结果内。
反向引用 \n:匹配第n个括号里的内容。

let regex = /(hello)\s+(world)(?=\!)/;let str = "hello world!";let match = str.match(regex);console.log(match[1]); // "hello"console.log(match[2]); // "world"6.小结

JavaScript中的正则表达式功能强大且灵巧,闇练节制这一工具能极大地提高开拓效率,尤其是在数据洗濯、验证和搜索等场景。
希望这篇指南能帮助你更好地理解和利用正则表达式,实际操作中还需结合详细需求进行调度和优化。