1

私が障害にぶつかっているところはこれをチェックしようとしています

(?<http>(http|ftp|https):\/\/)?(?<address>([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?)

@記号が含まれている場合、式を拒否します。

私はこれについていくつかのバリエーションを試しましたが、成功しませんでした。

文字が含まれていないことを確認するように指示できれば機能しますが、構文@を使用して文字を要求したくありません。では、正規表現に受け入れと拒否を同時に[^@]行うように指示するにはどうすればよいですか。私の知る限りではできません。\w@[\w^@]

私の難しさは、正規表現の置換を使用していることです。それでは、プレースホルダーを使用して、後でそれに対して10試合を行うことを提案しますか?

4

2 に答える 2

3

すべてを1つの正規表現にまとめる必要はありません。たとえば、既存の正規表現と照合してから、文字列に@記号がないことをセカンダリ正規表現で確認できます。

于 2009-09-12T00:57:13.563 に答える
0

私はネッドに同意します。2 つの正規表現を使用します。http://regexlib.com/を含むいくつかのソースから入手できます。

于 2009-09-12T01:10:53.393 に答える