|
ファイル名と思わしき場所を正規表現で指定する場合の正規表現パターンです
が、連絡いただいたその
> [a-z]:|\\\\|){1}[^ \t\*\?\|:,;<>"][^\t\*\?\|:,;<>"]*(?=$)
だとカッコの対応が合ってないってことでエラーになってしまうようです。
先頭に「(」を付ければ一応通るんですが、それでも、ファイル名じゃなくて
も、ありとあらゆる文字列にヒットしまくってしまうようです。
ということで、なんとなくそれではまずい気がします。
うちのサポート会議室の過去ログを探すと、例えば以下のような例が出てきま
す。
あと注意点として、「大文字/小文字を区別」はOFFでないとダメです。もし
かしてそれがONになってるせいでうまくいってないだけかもしれません。
----白雲斎さんの発言の引用---------------------------------------------
下記のパスをファイル名と認識する
\\xxx_server\yyy_data\お客様\検討\資料.txt
xxx_server\yyy_data\お客様\検討\資料.txt
資料.txt
c:\foo\bar\test.txt
foo\bar\test.txt
test.txt
だけの簡単なテストだけ行いました。
実稼動に耐えるかどうかは分かりません・・・。
・大文字小文字の区別 :なし
・単語単位 :なし
●禁止文字以外は全て認識( \/:,;*?"<>|+=[] )
([a-z]:\\|\\\\)?[ !#-\)\-\.0-9@a-z\\^_`{}~、-\xfc\x4b]+\.[a-z0-9]{1,4}\>
●上から空白を除外
([a-z]:\\|\\\\)?[!#-\)\-\.0-9@a-z\\^_`{}~、-\xfc\x4b]+\.[a-z0-9]{1,4}\>
●ASCII文字を絞り込む
([a-z]:\\|\\\\)?[-_\.\\a-z0-9、-\xfc\x4b]+\.[a-z0-9]{1,4}\>
正規表現末尾“{1,4}”の数字を変更すれば、認識する拡張子の文字数が増減し
ます。
----------------kaisanさんの発言の引用--------------------------
文字列はデフォルトでもよいのですが
「([a-z]:|\\\\|)[a-z0-9\-_.\\/]+\.[a-z]{1,4}」の方がよいかもしれません。
------------山紫水明さんの発言の引用ちょっと改良----------
([a-z]:|\\\\|)[a-z0-9\-_.\\/あ-K]+\.(txt|html?|c|cpp|h|mac|doc)
って具合で、強調表示したいファイル名の拡張子を、一番最後のカッコ
の中で「|」で区切って指定する作戦もあります。
|
|