ホームページ  >  記事  >  ウェブフロントエンド  >  jsのアルゴリズム問題における正規表現の応用のまとめ

jsのアルゴリズム問題における正規表現の応用のまとめ

不言
不言オリジナル
2018-08-27 11:08:481688ブラウズ

本篇文章给大家带来的内容是关于js中的算法题之正则表达式的应用总结 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

正则

1、给定字符串 str,检查其是否包含连续重复的字母(a-zA-Z),包含返回 true,否则返回 false

// 在正则表达式中,利用()进行分组,使用斜杠加数字表示引用,\1就是引用第一个分组,
// \2就是引用第二个分组。将[a-zA-Z]做为一个分组,然后引用,就可以判断是否有连续重复的字母。
function containsRepeatingLetter(str) {
     return /([a-zA-Z])\1/.test(str);
 }

console.log(containsRepeatingLetter('abaaaa') );

2、给定字符串 str,检查其是否包含数字,包含返回 true,否则返回 false

function containsNumber(str) {
    return /\d/.test(str)
}

3、给定字符串 str,检查其是否以元音字母结尾。元音字母包括 a,e,i,o,u,以及对应的大写,包含返回 true,否则返回 false

function endsWithVowel(str) {
  return /[aeiou]$/ig.test(str)
}

4、字符串中是否含有连续的三个任意数字,如果包含,返回最新出现的 3 个数字的字符串,如果不包含,返回 false

function captureThreeNumbers(str) {
    var arr = str.match(/\d{3}/);
    if(arr){
        return arr[0];
    }else{
        return false;
    }
}

5、给定字符串 str,检查其是否符合如下格式:XXX-XXX-XXXX,其中 X 为 Number 类型

function matchesPattern(str) {
    return /^\d{3}-\d{3}-\d{4}$/.test(str);  
}

6、给定字符串 str,检查其是否符合美元书写格式
1、以 $ 开始
2、整数部分,从个位起,满 3 个数字用 , 分隔
3、如果为小数,则小数部分长度为 2
4、正确的格式如:$1,023,032.03 或者 $2.03  $0.12,错误的格式如:$3,432,12.12 或者 $34,344.3  

将整数部分和小数部分作为一个整体,在整数部分又将逗号和3个数字作为整体

function isUSD(str) {
    var re = /^\$([1-9]\d{0,2}(,\d{3})*|0)(\.\d{2})?$/;
    return re.test(str);
}

 相关推荐:

js中数学函数的总结及案例介绍

 js中的正则表达式大全

 JS中正则表达式的理解

以上がjsのアルゴリズム問題における正規表現の応用のまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。