加入收藏 | 设为首页 | 会员中心 | 我要投稿 甘孜站长网 (https://www.0836zz.com.cn/)- 运维、物联设备、数据计算、智能推荐、云管理!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

JS常用正则表达式备忘录

发布时间:2019-05-01 20:21:42 所属栏目:优化 来源:前端小智
导读:正则表达式或regex用于匹配字符串的各个部分 下面是我创建正则表达式的备忘单。 匹配正则 使用 .test() 方法 lettestString=Myteststring; lettestRegex=/string/; testRegex.test(testString); 匹配多个模式 使用操作符号 | constregex=/yes|no|maybe/;
副标题[/!--empirenews.page--]

JS常用正则表达式备忘录

正则表达式或“regex”用于匹配字符串的各个部分 下面是我创建正则表达式的备忘单。

匹配正则

使用 .test() 方法

  1. let testString = "My test string";  
  2. let testRegex = /string/;  
  3. testRegex.test(testString); 

匹配多个模式

使用操作符号 |

  1. const regex = /yes|no|maybe/;     

忽略大小写

使用i标志表示忽略大小写

  1. const caseInsensitiveRegex = /ignore case/i;  
  2. const testString = 'We use the i flag to iGnOrE CasE';  
  3. caseInsensitiveRegex.test(testString); // true 

提取变量的第一个匹配项

使用 .match() 方法

  1. const match = "Hello World!".match(/hello/i); // "Hello" 

提取数组中的所有匹配项

使用 g 标志

  1. const testString = "Repeat repeat rePeAT";  
  2. const regexWithAllMatches = /Repeat/gi;  
  3. testString.match(regexWithAllMatches); // ["Repeat", "repeat", "rePeAT"]   

匹配任意字符

使用通配符. 作为任何字符的占位符

  1. // To match "cat", "BAT", "fAT", "mat"  
  2. const regexWithWildcard = /.at/gi;  
  3. const testString = "cat BAT cupcake fAT mat dog";  
  4. const allMatchingWords = testString.match(regexWithWildcard); // ["cat", "BAT", "fAT", "mat"]   

用多种可能性匹配单个字符

  •     使用字符类,你可以使用它来定义要匹配的一组字符
  •     把它们放在方括号里 [] 
  1. //匹配 "cat" "fat" and "mat" 但不匹配 "bat"  
  2. const regexWithCharClass = /[cfm]at/g;  
  3. const testString = "cat fat bat mat";  
  4. const allMatchingWords = testString.match(regexWithCharClass); // ["cat", "fat", "mat"]   

匹配字母表中的字母

使用字符集内的范围 [a-z]

  1. const regexWidthCharRange = /[a-e]at/;  
  2. const regexWithCharRange = /[a-e]at/;  
  3. const catString = "cat";  
  4. const batString = "bat";  
  5. const fatString = "fat";  
  6. regexWithCharRange.test(catString); // true  
  7. regexWithCharRange.test(batString); // true  
  8. regexWithCharRange.test(fatString); // false 

匹配特定的数字和字母

你还可以使用连字符来匹配数字

  1. const regexWithLetterAndNumberRange = /[a-z0-9]/ig;  
  2. const testString = "Emma19382";  
  3. testString.match(regexWithLetterAndNumberRange) // true 

匹配单个未知字符

要匹配您不想拥有的一组字符,使用否定字符集 ^

  1. const allCharsNotVowels = /[^aeiou]/gi;  
  2. const allCharsNotVowelsOrNumbers = /[^aeiou0-9]/gi; 

匹配一行中出现一次或多次的字符

使用 + 标志    

  1. const oneOrMoreAsRegex = /a+/gi;  
  2. const oneOrMoreSsRegex = /s+/gi;  
  3. const cityInFlorida = "Tallahassee";  
  4. cityInFlorida.match(oneOrMoreAsRegex); // ['a', 'a', 'a'];  
  5. cityInFlorida.match(oneOrMoreSsRegex); // ['ss'];    

匹配连续出现零次或多次的字符

(编辑:甘孜站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读