ファイルのファイル名を更新するコントローラがあります。最初は、ファイル名を編集するときの特定の検証についてはわかりませんでした。だから私はそれを改名するときにエラーが発生しました。だから今私が行うのは、私の検証で正規表現を実装することです。Windowsファイル名の正規表現laravel 4.2
$rules = array(
'eFile' => 'required|min:2|max:200| regex: /^(?!\.)(?!com[0-9]$)(?!con$)(?!lpt[0-9]$)(?!nul$)(?!prn$)[^\|\*\?\\:<>/$"]*[^\.\|\*\?\\:<>/$"]+$/ | unique:nsa_fileuploads,filename,' . $id . ',fileid'
);
正規表現パターン::ここで
は、それがどのように見えるかだ
regex: /^(?!\.)(?!com[0-9]$)(?!con$)(?!lpt[0-9]$)(?!nul$)(?!prn$)[^\|\*\?\\:<>/$"]*[^\.\|\*\?\\:<>/$"]+$/
が、一度実行し、私は次のエラーを取得する:
preg_match(): No ending delimiter '/' found
どれでも私が何をしているのかについてのアイデア間違っていますか?
'/'はエスケープされていない可能性があります。これを試してください: '/^(?!\.)(?!com[0-9]$)(?!con$)(?!lpt[0-9]$)(?!nul$)(?!prn $ /] "+ $ /' – Ohgodwhy
こんにちは@Ohgodwhy!私は試しましたが、まだ 'preg_match():終了デリミタなし '/' found'エラーがあります – BourneShady
['〜^(?!\。)(?! com [0-9] $)(?! con $ (?! nul $)(?! prn $)[^ | *?\\:<>/$ "] * [^。| *?\\:<> /$"]+$~'](https://regex101.com/r/aB8hP7/3)。 '/.../'を '〜...〜'に変更してみてください。 –