先読みを使用して正規表現の文字長を制限する
正規表現を使用する場合、多くの場合、一致する文字の数を制限する必要があります。特定のパターン。ただし、次の例に示すように、アンカーに量指定子を適用しようとすると、エラーが発生する可能性があります。
var test = /^(a-z|A-Z|0-9)*[^$%^&*;:,<>?()""']*${1,15}/ // Uncaught SyntaxError: Invalid regular expression
この制限を克服するには、入力文字列の先頭にアンカーされた先読みを使用できます。
^(?=.{1,15}$)[a-zA-Z0-9]*[^$%^&*;:,<>()?""']*$
この先読みにより、後続の文字が次の条件を満たすことが保証されます。条件:
このアプローチを使用することで、効果的に長さを制限できます。入力文字列全体を 15 文字に制限し、指定されたパターンがその制限内で一致することを可能にします。
重要注
以上が先読みは正規表現の文字長の制限にどのように役立ちますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。