0

文字列内の複数のファイル名を検証するには、正規表現が必要です。

例えば:

a.html有効です。
複数のファイルの場合はa.html;b.html、である必要があり、
2つを超える場合は。である必要がありますa.html;b.html;c.html

間違った表現:

1)  a;b.html
2)  a.html;b
3)  a;b
4)  a.html;
5)  a.html;b;
6)  a.html;b.html;

文字列がで終わる場合は、;別の有効なファイル名(c.html)が必要です。

私のコードは次のとおりです。

regex": /^([a-zA-Z]:\\)?[^\x00-\x1F"<>\|:\*\?/]+\.[a-zA-Z]{3,4}$/,
alertText": "* Only (;) and (.) are Allowed
4

1 に答える 1

0

ここに短い解決策があります

/^(?:[^\.;]+\.[^\.;]+)(?:;[^\.;]+\.[^\.;]+)*$/

いくつかの説明: 最初の部分(?:[^\.;]+\.[^\.;]+)は単一のファイル名に一致します。ファイル名は、.およびを含まないものであれば何でもかまいません;

2 番目の部分は、前部と末尾(?:;[^\.;]+\.[^\.;]+)*を除いて、最初の部分とほとんど同じです。これは、パート 1 のようなファイル名を表し、先頭に. 可能な限り繰り返されます;*;

于 2012-10-27T23:28:07.147 に答える