この記事は、js でよく使用される正規表現の使用法をまとめたものです。必要な方は参考にしていただければ幸いです。
最近いくつかのプロジェクトを行ったところ、正規表現がますます使用されていることがわかりました。私の個人的な習慣は、マニュアルを調べて得られるものを暗記しないことです。ほとんどの技術 Web サイトには Javascript の正規表現の使用法が多数まとめられていますが、それでもより実用的な意味を持つマニュアルを作成したいと考えています。率直に言って、将来正規表現を使用する必要がある場合は、すぐにコピーして貼り付けてください。皆様の開発効率が向上するよう、レイアウトを少しでも美しくできるよう頑張ります。上記は Javascript 正規表現の簡潔な使用法です。実践的な内容については、最後のセクションに進んでください。
3 つの修飾子
Javascript 正規表現には 3 つの修飾子があります: i、g、m
i を追加すると、正規の一致では大文字と小文字が区別されなくなります (デフォルトでは大文字と小文字が区別されます):
var reg = /j/; reg.test('Javascript'); //结果为false var reg2 = /j/i; reg2.test('Javascript'); //结果为true
javascript
gを追加した後、グローバルマッチングが実行されます(デフォルトは1回のマッチングで停止します):
var reg = /a/; 'Javascript'.replace(reg,'e'); //结果为Jevascript var reg2 = /a/g; 'Javascript'.replace(reg2,'e'); //结果为Jevescript
javascript
mを追加した後、複数行のマッチングが実行されます(デフォルトは1行のみ):
var reg = /^s/; reg.test('Java\nscript'); //结果为false var reg2 = /^s/m; reg2.test('Java\nscript'); //结果为true
javascript
関連する正規表現メソッド
正規表現で使用される関数について混乱している人も多いかもしれません。一般的に使用されるメソッドをいくつか示します:
文字列の後には 3 つの一般的な関数が続きます: match(reg) (一致した文字列を返します)。 、replace(reg,'...') (コンテンツを置換)、search(reg) (一致するコンテンツの開始位置を返す)
正規表現の後には、よく使用される 2 つの関数が続きます: test(string) (内容が一致するかどうかを返します) matches)、exec(string) (一致した文字列を返します)
正規表現の宣言
宣言方法は 2 つあり、特定の状況に応じて使用してください:
var reg = /a/; // 普通声明方式,大多数情况下使用 var reg2 = new RegExp('a','g'); // 字符串声明方式,部分情况特别有用
JS 正規表現の実践的な使用法
JS 正規表現メールボックス:
var mailReg = /^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
携帯電話の正規表現:
var phoneReg = /^1\d{10}$/;
ID カードの正規表現:
var idCardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
JS 名前(漢字)の正規表現:
var nameReg = /^[\u4e00-\u9fa5]{2,4}$/; // 2-4位的汉字名字
通常のドメイン名の正規表現:
var urlReg = /^(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*([\?&]\w+=\w*)*$/; // https或http协议的url
ユーザー名QQ番号のJS正規表現:
var userNameReg = /^[A-Za-z0-9-_]*$/; // 用户名为数字英文下划线或短划线
郵便番号のJS正規表現:
var qqReg = /^[1-9][0-9]{4,}$/;
HTMLタグのJS正規表現:
var mailReg = /^[1-9][0-9]{5}$/;
日付のJS正規表現:
var tagReg = /<[^>]+>/; //可以用来去掉html文本中的标签,得到纯文字
時刻のJS正規表現:
var dateReg = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/; //YYYY-MM-dd格式,短线可以视情况替换
上記一般的に使用される JS 正規表現をいくつか挙げます
関連する推奨事項:
js はどのようにして XML 文字列をフォーマットし、ハイライト表示しますか? (コード付き) JSの正規表現の基本シリーズ以上がjs での一般的な正規表現の使用法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。