開発環境
- macOS Sierra - Apple (OS)
- Emacs (Text Editor)
- JavaScript (プログラミング言語)
- Safari(Web browser)
Eloquent JavaScript(Marijn Haverbeke 著、No Starch Press)のPart 1(Language)、Chapter 9(Regular Expressions)、Exercises(Regexp Golf)を取り組んでみる。
Exercises(Regexp Golf)
コード(Emacs)
JavaScript
{
'use strict';
let reg1 = /ca[rt]/,
reg2 = /pr?op/,
reg3 = /ferr(et|y|ari)/,
reg4 = /\b\w*ious\b/,
reg5 = /[\.,:;]\s/,
reg6 = /\w{6,}/,
reg7 =/[a-df-z]+/,
regs = [reg1, reg2, reg3, reg4, reg5, reg6, reg7];
let s = 'car and cat, pop and prop, ferret, ferry, and ferrari, ' +
'any word ending in ious, a whitespace character followed by a dot, ' +
'comma, coln, or semicolon, a word longer than six letters, ' +
'a word without the letter e';
regs.forEach((reg) => {
console.log(reg, reg.test(s));
});
console.log();
regs.forEach((reg) => {
console.log(reg, reg.exec(s)[0]);
});
}
入出力結果(Terminal, Node.js)
$ node sample1.js
/ca[rt]/ true
/pr?op/ true
/ferr(et|y|ari)/ true
/\b\w*ious\b/ true
/[\.,:;]\s/ true
/\w{6,}/ true
/[a-df-z]+/ true
/ca[rt]/ 'car'
/pr?op/ 'pop'
/ferr(et|y|ari)/ 'ferret'
/\b\w*ious\b/ 'ious'
/[\.,:;]\s/ ', '
/\w{6,}/ 'ferret'
/[a-df-z]+/ 'car'
$
0 コメント:
コメントを投稿