正規表現メタ文字

今のところ秀丸で使用できる正規表現のみ
そのうちRubyにも対応できればいいな。

ちなみに、.Net環境での詳細

位置

^(キャレット)

行頭を表す

$(ドル)

行末を表す

ワイルドカード

.(ピリオド)

改行を除く任意の一文字を表す

*(アスタリスク)

直前の文字列やメタ文字の「0回以上の繰り返し」を表す

+(プラス)

直前の文字列やメタ文字の「1回以上の繰り返し」を表す

?(クエスチョン)

直前の文字列やメタ文字の「0回もしくは1回出現」を表す

[](ブラケット)

[]内の一文字または正規表現の[いずれか一つ]を表す
[abc]a なら aa or ba or caのいずれか

^(キャレット)

以外を表す
→[^a]は、a以外の文字。[^0-9]数字以外の文字。

{}(中括弧)

{n}で直前の文字n回繰り返し
{n,}で直前の文字n回以上繰り返し
{n,m}で直前の文字n回以上m回以下繰り返し

グループ化

()(括弧)

()で囲んだ部分がグループ化とキャプチャをする
(正規)? なら「正規」の1回以上の繰り返し
※キャプチャは後で$1などで参照できる

|(パイプ)

or条件
(正規|表現)? なら 正規表現の1回以上の繰り返し

名前でセレクト

前方一致

[name^="class name"]

後方一致

[name$="class name"]

部分一致

[name*="class name"]

最短マッチ

.*?
const str = '<a href="xxx">hoge</a><a href="yyy">fuga</a>'
console.log(str.match(/<a.*>([\s\S]*)<\/a>/));
→<a href="xxx">hoge</a><a href="yyy">fuga</a>
console.log(str.match(/<a.*?>([\s\S]*?)<\/a>/));
→<a href="xxx">hoge</a>

  • 最終更新:2018-02-06 17:38:48

このWIKIを編集するにはパスワード入力が必要です

認証パスワード