私はgetContents()
という関数を持っています。これは見つかったファイル名の正規表現を受け入れます。Regex on File Names
私は、次の2つの正規表現のパターンで、JavaScriptファイル用のjs
フォルダをスキャン:の<head>
タグやフッターには、Javascriptファイルがロードされる場所が決定した場合
$js['head'] = "/(\.head\.js\.php)|(\.head\.js)|(\.h.js)/";
$js['foot'] = "/(\.foot\.js\.php)|(\.foot\.js)|(\.f.js)|(\.js)^(\.head\.js)/";
私はそれによってネーミングシステムを持っていますHTMLページ。すべてのファイルは、(.head.js
など)を指定しない限り、ページの下部に読み込まれているとみなされます。
私が気づいたのは、js['foot']
アレイに.head.js
も含まれていて、ファイルが2回読み込まれることに気付きました。だから私は^(\.head\.js)
で追加し、それは働いた!フッタ配列に.headsファイルが追加されなくなりました。私は正規表現で吸うので、私は自分自身に非常に満足していました。しかし今や標準の.js
ファイル(通常の.js
ファイル)が$js['foot']
アレイにロードされているようになったようです。どうしてこれなの? ^(\.head\.js)
部分を削除すると、その部分がロードされます。
明確にするためには、私は$js['foot']
配列で終わるファイルをロードします:
.foot.js.php
.foot.js
.f.js
.js
そしてIGNOREすべて:
.head.js.php
.head.js
.h.js
誰かがこれを行うには、上記の私の正規表現を修正することはできますか?私は^
オペレータがNOT
だと思ったが、間違っていた!
を命名規則。おそらく、代わりに2つのフォルダにあなたのjsファイルを分割することができますし、正規表現にバイバイを言う? –
私はちょうど2つの別々の 'glob'呼び出しを介してこれをやってみたいと思います... /サイドノートで、なぜ' foot'_and_'f'、 'head'_and_'h' - これらは特別な意味を持っていますか別の目的もありますか? – CBroe
@CBroeは、毎回 '.head.js'を書くのではなく、命名のオプションを与えるだけです。' .h.js'は簡単です。 – Chud37