環境依存文字


正規表現とエスケープ

◆正規表現 メタキャラクタ メタキャラクタにより任意の1文字や任意の半角数字などを指定することができます。 メタキャラクタ 意味 . 任意の1文字 \w 英単語を構成する文字(a~z,A~Z,_,1~9) \W 英単語を構成する文字以外 \s 空白文字(半角スペース,タブ,改行,キャリッジリターン) \S 空白文字以外 \d 半角数字(0~9) \D 半角数字以外 \b 単語の境界に一致 [xyz] 指定された文字のどれかに一致(この場合xyzのいずれかに一致) [a-z] マッチする文字の範囲を指定する表現(この場合aからzまで他には[1-9][A-Z]など文字コードが連続していれば使える。) (pattern1|pattern2) 指定されたパターンのどれかにマッチする表現 2.量指定子 量指定子は、文字の後ろに配置し、前の文字が何回出てくるのかを指定します。例えば、0回以上の繰り返しにマッチする量指定子*を ne*ko のように使うと、nko, neko, neeko,neeekoなどに一致します。カッコで囲むことにより繰り返す文字列も指定することができます。 (neko)*sakana であると、sakana, nekosakana, nekonekosakanaという文字列に一致します。 量指定子 意味 * 0回以上の繰り返しにマッチ + 1回以上の繰り返しにマッチ {n} n回の繰り返しにマッチする表現 {n,} n回以上の繰り返しにマッチする表現 {n,m} n回以上m回以下の繰り返しにマッチする表現 ? 0回または1回の出現にマッチする表現 3.アンカー 文字列の先頭や末尾に特定の文字がある文字列も表現できます。 アンカー 意味 ^pattern 文字列の先頭にpatternがある文字列に一致 pattern$ 文字列の末尾にpatternがある文字列に一致 正規表現でエスケープが必要な文字一覧表 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー エスケープ前 エスケープ後 注意点 \ \\ エスケープを行う文字そのものなので、\ だけの記述はできません。\ にマッチングさせたい場合は \\ と記述。 * \* + \+ . \. ? \? { } \{\} 出現回数指定文字なのでエスケープが必要 ( ) \(\) エスケープしないと後方参照が作成される。またはグループ化される。 [ ] \[\] 直前文字の出現回数指定文字なのでエスケープが必要 ^ \^ 行頭を指定することになる。 $ \$ 行末を指定することになる。Perlの場合は、変数の先頭文字である。 - \- [ ]の中に書く場合のみエスケープが必要 | \| / \/ Perlでは / が正規表現の指定になるのでエスケープが必要。言語によっては、" がエスケープ必要となる。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー


機種依存文字とは   外字   機種依存文字と呼ばれる由来   機種依存文字のサンプル   IBMと文字   制御文字   ASCIIコード   unicode   unicodeその他   誤表示   数値参照文字   BOMとは   文字コード表とは   SJIS   EUCJP   NEC特殊文字とは   CP932とは   符号化文字集合とは   メールと文字化け   base64とは   mime形式とは   urlencodeとは   SJISとJISコードの違い   改行とは   空白文字   Base64   ASCII文字←→URLエンコードの対応表   phpでのダブルクォート(シングルクォート) の違い   URLエンコードの気を付けるポイント   デコードの重複の注意ポイント   マルチバイト文字列   htmlエンコーディング   python文字列扱い   php SJIS-WIN   正規表現   正規表現とエスケープ文字   よくつかう正規表現例   メタ文字   波ダッシュ   JWTとは   pythonの文字コード   リモートからsudoを実行   pythonをバージョンを指定して実行   タイムスタンプとは   jsonとは   csvとは   webmとは   円マークとバックスラッシュ問題   ajax cache問題   ajax 非同期・同期通信設定   javaScriptでURLエンコード方法   拡張子一覧