エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
文字種チェック用の読みやすくて速い正規表現 - 岩本隆史の日記帳(アーカイブ)
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
文字種チェック用の読みやすくて速い正規表現 - 岩本隆史の日記帳(アーカイブ)
前回の日記で「クライアントに的確なエラーメッセージを返すため、文字種のチェックと文字数のチェック... 前回の日記で「クライアントに的確なエラーメッセージを返すため、文字種のチェックと文字数のチェックは分けて行うべきかもしれない」と書いた。 このうち、文字数のチェックは簡単である。文字数をカウントし、許容文字数を超えていないかどうか調べるだけでよい。 文字種のチェックには悩みどころがある。どのような正規表現を使うのが適切かという点だ。読みやすく、かつ速い正規表現が知りたい。 さて、文字種チェック用の正規表現は2種類に大別できる。 禁止文字が1文字でも含まれればマッチ 許容文字のみで構成されていればマッチ 具体的には下記のようなものだ。制御文字(定義は前回の日記を参照)を禁じ、ただし改行とタブは認める例である。 /[\p{C}\p{Zl}\p{Zp}&&[^\t\r\n]]/u /\A[[^\p{C}\p{Zl}\p{Zp}]\t\r\n]*\z/u どちらも意図は明確で、読みやすさは変わらな

